@import url('https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;700;800;900&display=swap');

/* ═══════════════════════════════════════════════════
   ControlByte Landing Framework &mdash; Scoped for Elementor
   All selectors prefixed with .cb-landing
   ═══════════════════════════════════════════════════ */

/* ── CSS Variables ── */
.cb-landing {
    --font-main: 'Inter', -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif;
    --color-primary: #2ac4ea;
    --color-primary-dark: #1b8fb5;
    --color-accent: #ff2d75;
    --color-accent-dark: #d41e5e;
    --color-success: #5caf33;
    --color-dark: #0f0f23;
    --color-darker: #1a1a35;
    --color-darkest: #0a0a1a;
    --color-light: #ffffff;
    --color-text-dark: #222;
    --color-text-light: #fff;
    --color-text-muted: #aaa;
    --color-text-subtle: #777;
    --radius-sm: 8px;
    --radius-md: 12px;
    --radius-lg: 16px;
    --radius-pill: 50px;
    --shadow-sm: 0 4px 15px rgba(0,0,0,.1);
    --shadow-md: 0 8px 30px rgba(0,0,0,.12);
    --shadow-lg: 0 12px 50px rgba(0,0,0,.5);
    --shadow-primary: 0 8px 30px rgba(42,196,234,.45);
    --shadow-accent: 0 8px 30px rgba(255,45,117,.45);
    --section-padding: 80px 20px;
    --container-max: 1280px;
}

/* ── Reset & Theme Override ── */
.cb-landing *, .cb-landing *::before, .cb-landing *::after { margin: 0; padding: 0; box-sizing: border-box; }
/* Lists keep native bullets - custom lists use ::before */

/* Force override any WordPress theme styles */
body.cb-landing-page { background: #fff !important; margin: 0 !important; padding: 0 !important; }
body.cb-landing-page #header-outer,
body.cb-landing-page #header-space,
body.cb-landing-page #footer-outer,
body.cb-landing-page .nectar-box-roll,
body.cb-landing-page #to-top,
body.cb-landing-page .wpb_row,
body.cb-landing-page #slide-out-widget-area,
body.cb-landing-page #slide-out-widget-area-bg { display: none !important; }
body.cb-landing-page #ajax-content-wrap { padding-top: 0 !important; margin-top: 0 !important; }

/* ── Base ── */
.cb-landing {
    font-family: var(--font-main) !important;
    color: var(--color-text-light);
    background: transparent;
    overflow-x: hidden;
    line-height: 1.6 !important;
    -webkit-font-smoothing: antialiased;
}

.cb-landing img { max-width: 100%; height: auto; }
.cb-landing a { color: var(--color-primary); text-decoration: none !important; }

/* Force typography on all elements - override theme */
.cb-landing h1, .cb-landing h2, .cb-landing h3, .cb-landing h4, .cb-landing h5, .cb-landing h6 {
    font-family: var(--font-main) !important;
    line-height: 1.25 !important;
    letter-spacing: -0.01em !important;
}
.cb-landing p, .cb-landing li, .cb-landing span, .cb-landing div {
    font-family: var(--font-main) !important;
}
.cb-landing p {
    font-size: 1.1rem;
    line-height: 1.6;
    font-weight: 500;
}
.cb-landing li {
    font-size: 1.1rem;
    line-height: 1.45;
    font-weight: 500;
}

/* Section text color overrides - beat theme specificity */
.cb-landing .section-light h1, .cb-landing .section-light h2, .cb-landing .section-light h3,
.cb-landing .section-light h4, .cb-landing .section-light h5, .cb-landing .section-light p,
.cb-landing .section-light li, .cb-landing .section-light span, .cb-landing .section-light div,
.cb-landing .section-light label {
    color: var(--color-text-dark) !important;
}
.cb-landing .section-light a { color: var(--color-primary) !important; }

.cb-landing .section-dark h1, .cb-landing .section-dark h2, .cb-landing .section-dark h3,
.cb-landing .section-dark h4, .cb-landing .section-dark h5, .cb-landing .section-dark p,
.cb-landing .section-dark li, .cb-landing .section-dark span, .cb-landing .section-dark div,
.cb-landing .section-darker h1, .cb-landing .section-darker h2, .cb-landing .section-darker h3,
.cb-landing .section-darker h4, .cb-landing .section-darker h5, .cb-landing .section-darker p,
.cb-landing .section-darker li, .cb-landing .section-darker span, .cb-landing .section-darker div,
.cb-landing .hero h1, .cb-landing .hero h2, .cb-landing .hero h3,
.cb-landing .hero p, .cb-landing .hero li, .cb-landing .hero span, .cb-landing .hero div,
.cb-landing .mid-cta h1, .cb-landing .mid-cta h2, .cb-landing .mid-cta p,
.cb-landing .final-cta h1, .cb-landing .final-cta h2, .cb-landing .final-cta p {
    color: var(--color-text-light) !important;
}

/* FAQ in light sections */
.cb-landing .section-light .faq-q { color: var(--color-text-dark) !important; }
.cb-landing .section-light .faq-a, .cb-landing .section-light .faq-a p { color: var(--color-text-subtle) !important; }
.cb-landing .section-darker .faq-q { color: var(--color-text-light) !important; }
.cb-landing .section-darker .faq-a, .cb-landing .section-darker .faq-a p { color: var(--color-text-muted) !important; }

/* Muted text overrides */
.cb-landing .text-muted, .cb-landing [style*="color:#aaa"], .cb-landing [style*="color: #aaa"] { color: var(--color-text-muted) !important; }
.cb-landing .section-light .text-muted { color: var(--color-text-subtle) !important; }

/* Cyan/accent color classes stay their color regardless of section */
.cb-landing .cyan { color: var(--color-primary) !important; }
.cb-landing .magenta { color: var(--color-accent) !important; }
.cb-landing .green { color: var(--color-success) !important; }

/* ── Layout ── */
.cb-landing .container {
    max-width: var(--container-max);
    margin: 0 auto;
    padding: 0 24px;
}

/* ── Section Patterns ── */
.cb-landing .section-light {
    background: var(--color-light);
    color: var(--color-text-dark);
    padding: var(--section-padding);
}
.cb-landing .section-dark {
    background: var(--color-dark);
    color: var(--color-text-light);
    padding: var(--section-padding);
}
.cb-landing .section-darker {
    background: var(--color-darker);
    color: var(--color-text-light);
    padding: var(--section-padding);
}
.cb-landing .section-primary {
    background: var(--color-primary);
    color: var(--color-text-dark);
    padding: var(--section-padding);
}

/* ── Typography ── */
.cb-landing .section-title {
    font-size: clamp(1.6rem, 4vw, 2.2rem);
    text-align: center;
    font-weight: 800;
    margin-bottom: 8px;
}
.cb-landing .section-light .section-title { color: var(--color-text-dark); }
.cb-landing .section-dark .section-title,
.cb-landing .section-darker .section-title { color: var(--color-text-light); }
.cb-landing .section-primary .section-title { color: var(--color-text-dark); }

.cb-landing .divider {
    width: 60px;
    height: 3px;
    background: var(--color-primary);
    margin: 12px auto 40px;
    border-radius: 2px;
}
.cb-landing .section-light .divider { background: var(--color-text-dark); }
.cb-landing .section-primary .divider { background: var(--color-text-dark); }

/* ── Color Utilities (defined in reset block above with !important) ── */

/* ── Grid Utilities ── */
.cb-landing .grid-2 {
    display: grid !important;
    grid-template-columns: 1fr 1fr !important;
    gap: 40px !important;
    align-items: center !important;
}
.cb-landing .grid-3 {
    display: grid !important;
    grid-template-columns: repeat(auto-fit, minmax(280px, 1fr)) !important;
    gap: 40px !important;
}
.cb-landing .grid-auto {
    display: grid !important;
    grid-template-columns: repeat(auto-fit, minmax(260px, 1fr)) !important;
    gap: 24px !important;
}

/* ── Buttons ── */
.cb-landing .cta-btn {
    display: inline-block;
    padding: 16px 44px;
    border-radius: var(--radius-pill);
    background: linear-gradient(135deg, var(--color-primary) 0%, var(--color-primary-dark) 100%);
    color: var(--color-text-light);
    font-weight: 800;
    font-size: 1.1rem;
    text-decoration: none;
    border: none;
    cursor: pointer;
    transition: transform .2s, box-shadow .2s;
    text-align: center;
    letter-spacing: .3px;
    font-family: var(--font-main);
}
.cb-landing .cta-btn:hover {
    transform: translateY(-2px);
    box-shadow: var(--shadow-primary);
}
.cb-landing .cta-btn-pink {
    background: linear-gradient(135deg, var(--color-accent) 0%, var(--color-accent-dark) 100%);
}
.cb-landing .cta-btn-pink:hover {
    box-shadow: var(--shadow-accent);
}

/* ── Video Embed ── */
.cb-landing .video-wrap {
    position: relative;
    border-radius: var(--radius-md);
    overflow: hidden;
    box-shadow: var(--shadow-lg);
}
.cb-landing .video-wrap iframe {
    width: 100%;
    height: auto;
    aspect-ratio: 16/9;
    border: none;
    display: block;
}

/* ── Cards ── */
.cb-landing .card {
    background: rgba(42,196,234,.06);
    border: 1px solid rgba(42,196,234,.15);
    border-radius: var(--radius-lg);
    padding: 28px;
}
.cb-landing .card-dark {
    background: rgba(255,255,255,.04);
    border: 1px solid rgba(255,255,255,.08);
    border-radius: var(--radius-lg);
    padding: 28px;
}

@media (max-width: 768px) {
    .cb-landing .grid-2 { grid-template-columns: 1fr !important; }
    .cb-landing .grid-3 { grid-template-columns: 1fr; }
    .cb-landing .arrow-list { columns: 1; }
}

/* ═══════════════════════════════════════
   Hero Section
   ═══════════════════════════════════════ */
.cb-landing .hero {
    background: linear-gradient(135deg, var(--color-darkest) 0%, var(--color-dark) 50%, #0d2430 100%);
    text-align: center;
    padding: 60px 20px 50px;
}
.cb-landing .hero-logo {
    height: 38px;
    margin-bottom: 24px;
}
.cb-landing .hero-sub {
    font-size: .95rem;
    text-transform: uppercase;
    letter-spacing: 2px;
    color: var(--color-text-muted);
    margin-bottom: 10px;
}
.cb-landing .hero h1 {
    font-size: clamp(1.8rem, 5vw, 2.8rem);
    font-weight: 900;
    line-height: 1.2;
    margin-bottom: 30px;
}
.cb-landing .hero-video-wrap {
    position: relative;
    max-width: 1100px;
    margin: 0 auto 30px;
    border-radius: var(--radius-md);
    overflow: hidden;
    box-shadow: var(--shadow-lg);
}
.cb-landing .hero-video-wrap iframe {
    width: 100%;
    height: auto;
    aspect-ratio: 16/9;
    border: none;
    display: block;
}
.cb-landing .hero-tagline {
    font-size: 1.15rem;
    font-weight: 700;
    margin-bottom: 30px;
    color: #ccc;
}

/* ── Waiting List Form ── */
.cb-landing .waitlist-box {
    max-width: 520px;
    margin: 0 auto;
    padding: 32px 28px;
    border-radius: var(--radius-lg);
    background: rgba(42,196,234,.08);
    border: 1px solid rgba(42,196,234,.25);
    backdrop-filter: blur(6px);
}
.cb-landing .waitlist-box h3, .cb-landing .waitlist-box .waitlist-title {
    font-size: 1.2rem;
    margin-bottom: 6px;
    font-weight: 800;
}
.cb-landing .waitlist-box p {
    font-size: .85rem;
    color: var(--color-text-muted);
    margin-bottom: 18px;
}
.cb-landing .waitlist-box .form-row {
    display: flex;
    gap: 10px;
    flex-wrap: wrap;
}
.cb-landing .waitlist-box input[type="email"] {
    flex: 1;
    min-width: 200px;
    padding: 14px 18px;
    border-radius: var(--radius-pill);
    border: 1px solid rgba(255,255,255,.15);
    background: rgba(255,255,255,.06);
    color: #fff;
    font-size: .95rem;
    font-family: var(--font-main);
    outline: none;
    transition: border-color .2s;
}
.cb-landing .waitlist-box input[type="email"]:focus {
    border-color: var(--color-primary);
}
.cb-landing .waitlist-box input[type="email"]::placeholder {
    color: var(--color-text-subtle);
}
.cb-landing .waitlist-box .cta-btn {
    padding: 14px 32px;
    font-size: .95rem;
    white-space: nowrap;
    text-decoration: underline;
}
.cb-landing .form-note {
    font-size: .75rem;
    color: #666;
    margin-top: 10px;
    text-align: center;
}

/* ═══════════════════════════════════════
   Feature Lists
   ═══════════════════════════════════════ */
.cb-landing .check-list { list-style: disc; padding-left: 20px; }
.cb-landing .check-list li {
    padding: 8px 0;
    font-size: 1.15rem;
    font-weight: 600;
    line-height: 1.5;
}

.cb-landing .arrow-list { list-style: disc; padding-left: 20px; }
.cb-landing .arrow-list li {
    padding: 8px 0;
    font-size: 1.15rem;
    font-weight: 600;
    line-height: 1.4;
    break-inside: avoid;
}

.cb-landing .bullet-list { list-style: disc; padding-left: 20px; }
.cb-landing .bullet-list li {
    padding: 6px 0;
    font-size: 1.1rem;
    line-height: 1.45;
    font-weight: 500;
}

.cb-landing .target-list { list-style: disc; padding-left: 20px; }
.cb-landing .target-list li {
    padding: 8px 0;
    font-size: 1.15rem;
    line-height: 1.4;
    font-weight: 600;
    break-inside: avoid;
}

.cb-landing .disc-list {
    list-style: disc;
    padding-left: 20px;
}
.cb-landing .disc-list li {
    margin-bottom: 8px;
    font-size: 1.1rem;
    line-height: 1.45;
    font-weight: 500;
}

.cb-landing .feature-img {
    width: 100%;
    max-width: 100%;
    border-radius: var(--radius-md);
    box-shadow: var(--shadow-md);
}
.cb-landing .grid-2 img {
    width: 100%;
    border-radius: var(--radius-md);
}
.cb-landing .feature-video iframe {
    width: 100%;
    height: auto;
    aspect-ratio: 16/9;
    border: none;
    border-radius: var(--radius-md);
    display: block;
}

.cb-landing .threat-points { list-style: none; padding: 0; }
.cb-landing .threat-points li {
    margin-bottom: 10px;
    font-size: 1.1rem;
    line-height: 1.7;
}
.cb-landing .threat-points li:last-child {
    color: var(--color-accent);
    font-weight: 700;
}
.cb-landing .threat-points li:nth-last-child(2) {
    color: var(--color-success);
    font-weight: 700;
}

.cb-landing .sim-list { list-style: none; }
.cb-landing .sim-list li {
    margin-bottom: 10px;
    font-size: 1.1rem;
    line-height: 1.7;
    font-weight: 500;
}

/* ═══════════════════════════════════════
   Instructors Section
   ═══════════════════════════════════════ */
.cb-landing .instructors-section { position: relative; }
.cb-landing .instructor-profile {
    display: flex;
    align-items: center;
    gap: 48px;
    max-width: 850px;
    margin: 0 auto;
}
.cb-landing .instructor-photo-wrap {
    flex-shrink: 0;
}
.cb-landing .instructor-photo-wrap img {
    width: 280px;
    height: 280px;
    object-fit: cover;
    border-radius: 50%;
    border: 4px solid var(--color-primary);
    box-shadow: 0 0 30px rgba(42,196,234,.25), 0 8px 25px rgba(0,0,0,.4);
}
.cb-landing .instructor-name {
    font-size: 1.6rem;
    font-weight: 800;
    margin-bottom: 6px;
    color: var(--color-text-light);
}
.cb-landing .instructor-role {
    font-size: 1rem;
    color: var(--color-primary);
    font-weight: 600;
    margin-bottom: 20px;
}
.cb-landing .instructor-blockquote {
    position: relative;
    font-style: italic;
    font-size: 1.1rem;
    line-height: 1.7;
    color: #ccc;
    padding: 16px 20px 16px 24px;
    border-left: 3px solid var(--color-primary);
    background: rgba(42,196,234,.05);
    border-radius: 0 var(--radius-md) var(--radius-md) 0;
    margin: 0;
}
.cb-landing .instructor-blockquote .quote-mark {
    font-size: 2.5rem;
    color: var(--color-primary);
    line-height: 1;
    margin-right: 4px;
    vertical-align: -6px;
    font-style: normal;
}

@media (max-width: 768px) {
    .cb-landing .instructor-profile {
        flex-direction: column;
        text-align: center;
    }
    .cb-landing .instructor-photo-wrap img {
        width: 200px;
        height: 200px;
    }
    .cb-landing .instructor-blockquote {
        border-left: none;
        border-top: 3px solid var(--color-primary);
        border-radius: 0 0 var(--radius-md) var(--radius-md);
    }
}

/* ═══════════════════════════════════════
   Module / Project Cards
   ═══════════════════════════════════════ */
.cb-landing .module-card {
    background: rgba(0,0,0,.08);
    border-radius: var(--radius-lg);
    padding: 28px;
    margin-bottom: 28px;
}
.cb-landing .module-card-grid {
    display: grid !important;
    grid-template-columns: 1fr 1fr !important;
    gap: 28px !important;
    align-items: center !important;
}
.cb-landing .module-card h3 {
    font-size: 0.95rem;
    font-weight: 700;
    margin-bottom: 6px;
    text-transform: uppercase;
    letter-spacing: 0.5px;
    opacity: 0.85;
}
.cb-landing .module-card h4 {
    font-size: 1.6rem;
    font-weight: 900;
    margin-bottom: 16px;
}
.cb-landing .module-card ul {
    list-style: disc;
    padding-left: 20px;
}
.cb-landing .module-card ul li {
    margin-bottom: 8px;
    font-size: 1.1rem;
    line-height: 1.45;
    font-weight: 500;
}
/* Responsive iframe wrapper - 16:9 */
.cb-landing .video-container {
    position: relative;
    padding-bottom: 56.25%;
    height: 0;
    overflow: hidden;
    border-radius: var(--radius-md);
}
.cb-landing .video-container iframe {
    position: absolute;
    top: 0;
    left: 0;
    width: 100% !important;
    height: 100% !important;
    border: none;
}
.cb-landing .module-card img {
    width: 100% !important;
    max-width: 100% !important;
    aspect-ratio: 16/9;
    border-radius: var(--radius-md);
    object-fit: cover;
    display: block;
}

.cb-landing .sample-grid {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 36px;
    max-width: 1400px;
    margin: 0 auto;
}
.cb-landing .sample-card {
    text-align: center;
}
.cb-landing .sample-media {
    width: 100%;
    aspect-ratio: 16/9;
    border-radius: var(--radius-lg);
    overflow: hidden;
    box-shadow: 0 6px 30px rgba(0,0,0,.25);
    margin-bottom: 20px;
}
.cb-landing .sample-media iframe,
.cb-landing .sample-media img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    border: none;
    display: block;
}
.cb-landing .sample-media a {
    display: block;
    width: 100%;
    height: 100%;
}
.cb-landing .sample-card h3 {
    font-size: 1.2rem;
    font-weight: 700;
    line-height: 1.4;
}

@media (max-width: 768px) {
    .cb-landing .module-card-grid {
        grid-template-columns: 1fr !important;
    }
}

/* ═══════════════════════════════════════
   Testimonials & Industry Partners
   ═══════════════════════════════════════ */
.cb-landing .testimonial-grid {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(300px, 1fr));
    gap: 24px;
}
.cb-landing .testimonial-card {
    background: rgba(255,255,255,.04);
    border: 1px solid rgba(255,255,255,.08);
    border-radius: var(--radius-lg);
    padding: 28px;
}
.cb-landing .testimonial-card .stars {
    color: #f5c518;
    margin-bottom: 12px;
    font-size: 1.1rem;
}
.cb-landing .testimonial-card blockquote {
    font-size: 1rem;
    line-height: 1.7;
    color: #ccc;
    margin-bottom: 16px;
    font-style: italic;
}
.cb-landing .testimonial-card .author {
    font-weight: 700;
    font-size: 1rem;
    color: var(--color-primary);
}
.cb-landing .testimonial-card .course {
    font-size: .85rem;
    color: #888;
}

.cb-landing .industry-grid {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(300px, 1fr));
    gap: 36px;
}
.cb-landing .industry-card { text-align: center; }
.cb-landing .industry-video {
    position: relative;
    width: 100%;
    aspect-ratio: 16/9;
    border-radius: var(--radius-md);
    overflow: hidden;
    margin-bottom: 16px;
}
.cb-landing .industry-video iframe {
    width: 100%;
    height: 100%;
    border: none;
}
.cb-landing .industry-card h3 {
    font-size: 1.1rem;
    font-weight: 700;
}

@media (max-width: 768px) {
    .cb-landing .industry-grid {
        grid-template-columns: 1fr;
    }
}

/* ═══════════════════════════════════════
   Value Breakdown / Pricing
   ═══════════════════════════════════════ */
.cb-landing .value-subtitle {
    text-align: center;
    font-size: 1.15rem;
    color: #555 !important;
    margin-bottom: 32px;
}
.cb-landing .value-list {
    max-width: 800px;
    margin: 0 auto;
}
.cb-landing .value-item {
    display: grid;
    grid-template-columns: 36px 1fr auto;
    gap: 14px;
    align-items: center;
    padding: 10px 0;
    border-bottom: 1px solid #e8e8e8;
}
.cb-landing .value-item:last-child { border-bottom: none; }
.cb-landing .value-icon {
    width: 36px;
    height: 36px;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 1.15rem;
    color: #555 !important;
    background: #eef1f5;
    border-radius: 8px;
    flex-shrink: 0;
}
.cb-landing .value-content {
    display: flex;
    flex-direction: column;
    gap: 2px;
    min-width: 0;
}
.cb-landing .value-text {
    font-weight: 700;
    font-size: .98rem;
    color: #1a1a2e;
    line-height: 1.3;
}
.cb-landing .value-desc {
    font-size: .82rem;
    color: #666 !important;
    line-height: 1.35;
}
.cb-landing .value-amount {
    font-weight: 700;
    color: #2196F3 !important;
    font-size: .95rem;
    white-space: nowrap;
    text-decoration: none;
    align-self: center;
    text-align: right;
    padding-left: 12px;
}

.cb-landing .bonus-grid {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 36px;
}
@media (max-width: 768px) {
    .cb-landing .bonus-grid { grid-template-columns: 1fr; }
}
.cb-landing .bonus-card {
    background: rgba(42,196,234,.06);
    border: 1px solid rgba(42,196,234,.15);
    border-radius: var(--radius-lg);
    padding: 0;
    text-align: center;
    min-height: 360px;
    display: flex;
    flex-direction: column;
}
.cb-landing .bonus-card img {
    width: 100%;
    height: auto;
    border-radius: var(--radius-lg) var(--radius-lg) 0 0;
    margin-bottom: 0;
}
.cb-landing .bonus-card h3 {
    font-size: 1.15rem;
    font-weight: 800;
    margin-bottom: 8px;
    padding: 20px 24px 0;
}
.cb-landing .bonus-card p {
    font-size: .95rem;
    color: var(--color-text-muted);
    line-height: 1.6;
    padding: 0 24px 24px;
}

.cb-landing .certificate-list { list-style: disc; padding-left: 20px; }
.cb-landing .certificate-list li {
    padding: 8px 0;
    font-size: 1.15rem;
    line-height: 1.45;
    font-weight: 600;
}
.cb-landing .certificate-video iframe {
    width: 100%;
    height: auto;
    aspect-ratio: 16/9;
    border: none;
    border-radius: var(--radius-md);
    display: block;
}

@media (max-width: 768px) {
    .cb-landing .value-item {
        grid-template-columns: 40px 1fr;
        gap: 12px;
    }
    .cb-landing .value-icon { width: 32px; height: 32px; font-size: 1rem; }
    .cb-landing .value-item { grid-template-columns: 32px 1fr; padding: 8px 0; }
    .cb-landing .value-amount { grid-column: 2; text-align: left; padding: 2px 0 0; }
}

/* ═══════════════════════════════════════
   FAQ & Accordion
   ═══════════════════════════════════════ */
.cb-landing .accordion {
    max-width: 900px;
    margin: 0 auto;
}
.cb-landing .accordion-item {
    border-bottom: 1px solid rgba(255,255,255,.1);
}
.cb-landing .accordion-header {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 20px 24px;
    cursor: pointer;
    font-weight: 700;
    font-size: 1.2rem;
    color: var(--color-primary);
    transition: color .2s;
}
.cb-landing .accordion-header:hover {
    color: var(--color-text-light);
}
.cb-landing .accordion-meta {
    display: flex;
    align-items: center;
    gap: 12px;
    flex-shrink: 0;
}
.cb-landing .accordion-duration {
    font-size: .85rem;
    font-weight: 400;
    color: rgba(255,255,255,.5);
    white-space: nowrap;
    text-decoration: underline;
}
.cb-landing .accordion-header .arrow {
    transition: transform .3s;
    font-size: 1.2rem;
}
.cb-landing .accordion-header.active .arrow {
    transform: rotate(180deg);
}
.cb-landing .accordion-body {
    max-height: 0;
    overflow: hidden;
    transition: max-height .35s ease;
    color: #ccc;
    font-size: 1.05rem;
    line-height: 1.5;
}
.cb-landing .accordion-body.open {
    max-height: 600px;
}
.cb-landing .accordion-body ul {
    list-style: disc;
    padding: 0 0 16px 20px;
}
.cb-landing .accordion-body ul li {
    margin-bottom: 4px;
}

.cb-landing .faq-item {
    border-bottom: 1px solid rgba(255,255,255,.08);
}
.cb-landing .faq-q {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 18px 24px;
    cursor: pointer;
    font-weight: 700;
    font-size: 1.1rem;
    color: var(--color-text-light);
    transition: color .2s;
}
.cb-landing .faq-q:hover {
    color: var(--color-primary);
}
.cb-landing .faq-q .arrow {
    transition: transform .3s;
    color: var(--color-primary);
}
.cb-landing .faq-q.active .arrow {
    transform: rotate(180deg);
}
.cb-landing .faq-a {
    max-height: 0;
    overflow: hidden;
    transition: max-height .35s ease;
    color: var(--color-text-muted);
    font-size: 1rem;
    line-height: 1.7;
}
.cb-landing .faq-a.open {
    max-height: 300px;
}
.cb-landing .faq-a p {
    padding-bottom: 16px;
}

/* ═══════════════════════════════════════
   CTA Sections (Mid & Final)
   ═══════════════════════════════════════ */
.cb-landing .mid-cta {
    background: #fff !important;
    text-align: center;
    padding: 20px 20px 60px;
}
.cb-landing .mid-cta h2 {
    font-size: clamp(1.5rem, 4vw, 2.2rem);
    font-weight: 900;
    margin-bottom: 16px;
}
.cb-landing .mid-cta .mid-cta-subtitle {
    max-width: 500px;
    margin: 0 auto 28px;
    font-size: 1rem;
}
.cb-landing .mid-cta-intro {
    font-size: 1.15rem;
    font-weight: 600;
    font-style: italic;
    color: #333 !important;
    margin-bottom: 32px;
    max-width: 700px;
    margin-left: auto;
    margin-right: auto;
}
.cb-landing .mid-cta-layout {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 40px;
    align-items: center;
    max-width: 900px;
    margin: 0 auto;
    text-align: center;
}
.cb-landing .mid-cta-left .price-row {
    margin-bottom: 4px;
}
.cb-landing .mid-cta-sale-price {
    font-size: 3.5rem;
    font-weight: 900;
    color: #4caf50 !important;
    margin-bottom: 20px;
}
.cb-landing .mid-cta-sale-price .cb-sale-price,
.cb-landing .mid-cta-sale-price .cb-currency {
    color: #4caf50 !important;
    font-size: 3.5rem !important;
    font-weight: 900 !important;
}
.cb-landing .mid-cta-buy-btn {
    display: inline-block !important;
    padding: 24px 60px !important;
    font-size: 1.8rem !important;
    font-weight: 900 !important;
    background: #7ddf4a !important;
    color: #1a1a1a !important;
    border-radius: 16px !important;
    text-decoration: none !important;
    letter-spacing: 1px;
    transition: transform .2s, box-shadow .2s;
    box-shadow: 0 4px 20px rgba(125,223,74,.3);
}
.cb-landing .mid-cta-buy-btn:hover {
    transform: scale(1.03);
    box-shadow: 0 6px 30px rgba(125,223,74,.45);
}
.cb-landing .mid-cta-urgency {
    margin-top: 20px;
    font-size: .95rem;
    font-weight: 600;
    color: #555 !important;
}
.cb-landing .mid-cta-right {
    text-align: center;
}
.cb-landing .mid-cta-join-text {
    font-size: 1.3rem;
    font-weight: 700;
    color: #222 !important;
    margin-bottom: 8px;
}
.cb-landing .mid-cta-deadline {
    font-size: .95rem;
    color: #e74c3c !important;
    font-weight: 600;
    margin-bottom: 16px;
}
.cb-landing .mid-cta-countdown {
    display: flex;
    gap: 16px;
    justify-content: center;
}
.cb-landing .mid-cta-form-wrapper {
    margin: 20px auto;
    max-width: 400px;
}
@media (max-width: 768px) {
    .cb-landing .mid-cta-layout {
        grid-template-columns: 1fr;
        gap: 24px;
        text-align: center;
        justify-items: center;
    }
    .cb-landing .mid-cta-left,
    .cb-landing .mid-cta-right {
        width: 100%;
        text-align: center;
        display: flex;
        flex-direction: column;
        align-items: center;
        justify-content: center;
    }
    .cb-landing .mid-cta-left .price-row,
    .cb-landing .mid-cta-left .mid-cta-sale-price {
        width: 100%;
        text-align: center;
    }
    .cb-landing .mid-cta-buy-btn {
        padding: 16px 32px !important;
        font-size: 1.2rem !important;
        max-width: 320px;
        width: auto;
        box-sizing: border-box;
        margin: 0 auto;
        display: inline-block !important;
    }
    /* Hide redundant "Join now for X€" on mobile - price already shown above */
    .cb-landing .mid-cta-right .mid-cta-join-text {
        display: none;
    }
    .cb-landing .mid-cta-deadline {
        font-size: .95rem;
        text-align: center;
        width: 100%;
    }
    .cb-landing .mid-cta-intro {
        font-size: 1rem !important;
        padding: 0 8px;
        text-align: center;
    }
    .cb-landing .mid-cta-urgency {
        font-size: .9rem;
        text-align: center;
        width: 100%;
    }
    .cb-landing .mid-cta-countdown {
        justify-content: center;
        width: 100%;
    }
}

.cb-landing .final-cta {
    background: linear-gradient(135deg, #0d2430 0%, var(--color-dark) 50%, var(--color-darkest) 100%);
    text-align: center;
    padding: 80px 20px 120px;
}
.cb-landing .final-cta h2 {
    font-size: clamp(1.6rem, 4vw, 2.4rem);
    font-weight: 900;
    margin-bottom: 16px;
}
.cb-landing .final-cta p {
    color: var(--color-text-muted);
    max-width: 560px;
    margin: 0 auto 32px;
    font-size: 1rem;
    line-height: 1.6;
}

/* ═══════════════════════════════════════
   Sticky Bottom Bar
   ═══════════════════════════════════════ */
.cb-landing .sticky-bar {
    position: fixed;
    bottom: 0;
    left: 0;
    right: 0;
    z-index: 9998;
    background: #e8e4a0;
    border-top: 2px solid rgba(0,0,0,.1);
    box-shadow: 0 -4px 15px rgba(0,0,0,.15);
    padding: 6px 20px;
}
/* Push page bottom padding when sticky bar visible so it doesnt cover footer */

.cb-landing .sticky-content {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 40px;
    flex-wrap: wrap;
}
.cb-landing .sticky-price {
    font-size: 1.1rem;
    font-weight: 800;
    color: #222 !important;
    white-space: nowrap;
    text-decoration: none;
}
.cb-landing .sticky-old-price {
    color: #c0392b !important;
    text-decoration: line-through;
    font-size: 1.1rem !important;
    font-weight: 700 !important;
}
.cb-landing .sticky-arrow {
    color: #222 !important;
    font-weight: 900;
    margin: 0 4px;
}
.cb-landing .sticky-new-price {
    color: #27ae60 !important;
    font-size: 1.3rem !important;
    font-weight: 900 !important;
    text-decoration: none !important;
}
.cb-landing .sticky-deadline {
    font-size: .85rem;
    font-weight: 700;
    color: #333 !important;
    text-align: center;
    line-height: 1.3;
}
.cb-landing .sticky-action {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 4px;
}
.cb-landing .sticky-buy-btn {
    display: inline-block;
    padding: 10px 28px;
    font-size: .95rem;
    font-weight: 900;
    background: #9b59b6 !important;
    color: #fff !important;
    border: none;
    border-radius: 8px;
    cursor: pointer;
    text-decoration: none;
    text-transform: uppercase;
    letter-spacing: .5px;
    box-shadow: 0 2px 8px rgba(155,89,182,.3);
    transition: transform .15s, box-shadow .15s;
}
.cb-landing .sticky-buy-btn:hover {
    transform: translateY(-1px);
    box-shadow: 0 4px 12px rgba(155,89,182,.45);
}
.cb-landing .sticky-seats { display: none !important;
    font-size: .7rem !important;
    color: #333 !important;
    font-weight: 600 !important;
}
.cb-landing .sticky-seats strong {
    color: #c0392b !important;
}
@media (max-width: 768px) {
    .cb-landing .sticky-content {
        gap: 12px;
        font-size: .85rem;
    }
    .cb-landing .sticky-deadline { display: none; }
    .cb-landing .sticky-buy-btn { padding: 8px 20px; font-size: .8rem; }
}

/* ═══════════════════════════════════════
   Countdown Timer
   ═══════════════════════════════════════ */
.cb-landing .cb-countdown {
    display: flex;
    justify-content: center;
    gap: 16px;
    margin: 20px 0;
}
.cb-landing .countdown-unit {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 6px;
}
.cb-landing .countdown-number {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 110px;
    height: 110px;
    border-radius: 50%;
    background: var(--color-darker);
    border: 3px solid var(--color-primary);
    color: var(--color-text-light);
    font-size: 2.8rem;
    font-weight: 900;
    font-family: var(--font-main);
    box-shadow: 0 4px 20px rgba(42,196,234,.25);
}
.cb-landing .countdown-label {
    font-size: .85rem;
    text-transform: uppercase;
    letter-spacing: 1.5px;
    color: var(--color-text-muted);
    font-weight: 700;
}

.cb-landing .seats-remaining {
    text-align: center;
    font-size: 1.15rem;
    font-weight: 700;
    margin: 16px 0;
    color: var(--color-text-light);
}

/* Light section overrides for countdown */
.cb-landing .section-light .countdown-number {
    background: #fff;
    border-color: #ccc;
    color: #222 !important;
    box-shadow: 0 2px 10px rgba(0,0,0,.08);
    width: 90px;
    height: 90px;
    font-size: 2.2rem;
}
.cb-landing .section-light .countdown-label {
    color: #888 !important;
    font-size: .75rem;
}
.cb-landing .section-light .seats-remaining {
    color: var(--color-text-dark);
}

@media (max-width: 480px) {
    .cb-landing .cb-countdown { gap: 10px; }
    .cb-landing .countdown-number {
        width: 65px;
        height: 65px;
        font-size: 1.6rem;
    }
    .cb-landing .countdown-label { font-size: .65rem; }
}

/* ═══════════════════════════════════════
   Partners Section
   ═══════════════════════════════════════ */
.cb-landing .partners-section {
    text-align: center;
}
.cb-landing .partners-section .section-title {
    margin-bottom: 8px;
}

/* Partners Slider (infinite scroll) */
.cb-landing .partners-slider {
    overflow: hidden;
    position: relative;
    padding: 10px 0;
}
.cb-landing .partners-track {
    display: flex;
    gap: 60px;
    align-items: center;
    animation: cb-scroll 30s linear infinite;
    width: max-content;
}
.cb-landing .partners-track img {
    height: 55px !important;
    width: auto !important;
    object-fit: contain;
    filter: grayscale(100%) opacity(.6);
    transition: filter .3s;
    flex-shrink: 0;
}
.cb-landing .partners-track img:hover {
    filter: grayscale(0%) opacity(1);
}
@keyframes cb-scroll {
    0% { transform: translateX(0); }
    100% { transform: translateX(-50%); }
}
.cb-landing .partners-slider::before,
.cb-landing .partners-slider::after {
    content: '';
    position: absolute;
    top: 0; bottom: 0;
    width: 80px;
    z-index: 2;
    pointer-events: none;
}
.cb-landing .section-light .partners-slider::before { background: linear-gradient(90deg, #fff 0%, transparent 100%); left: 0; }
.cb-landing .section-light .partners-slider::after  { background: linear-gradient(90deg, transparent 0%, #fff 100%); right: 0; }
.cb-landing .section-dark .partners-slider::before,
.cb-landing .section-darker .partners-slider::before { background: linear-gradient(90deg, var(--color-darker) 0%, transparent 100%); left: 0; }
.cb-landing .section-dark .partners-slider::after,
.cb-landing .section-darker .partners-slider::after  { background: linear-gradient(90deg, transparent 0%, var(--color-darker) 100%); right: 0; }

@media (max-width: 768px) {
    .cb-landing .partners-track img { height: 40px !important; }
    .cb-landing .partners-track { gap: 36px; }
}

/* Instructor banner (legacy - shared photo of multiple instructors) */
.cb-landing .instructor-banner {
    max-width: 700px;
    width: 100%;
    height: auto !important;
    border-radius: var(--radius-lg);
    margin: 0 auto 30px;
    display: block;
    box-shadow: 0 8px 25px rgba(0,0,0,.4);
}

/* ═══════════════════════════════════════
   Waitlist Form - Dark themed (no cyan bg)
   ═══════════════════════════════════════ */
.cb-landing .waitlist-box {
    background: rgba(17, 17, 39, .85) !important;
    border: 1px solid rgba(255,255,255,.12) !important;
    backdrop-filter: blur(12px);
}
.cb-landing .waitlist-box input[type="email"] {
    background: rgba(255,255,255,.08) !important;
    border: 1px solid rgba(255,255,255,.18) !important;
    color: #fff !important;
}
.cb-landing .waitlist-box input[type="email"]:focus {
    border-color: var(--color-primary) !important;
    box-shadow: 0 0 0 3px rgba(42,196,234,.15);
}
/* Waitlist in mid-cta (cyan bg) - darker glass */
.cb-landing .mid-cta .waitlist-box {
    background: rgba(0,0,0,.25) !important;
    border-color: rgba(255,255,255,.15) !important;
}
/* Waitlist in section-light - light glass */
.cb-landing .section-light .waitlist-box {
    background: rgba(240, 240, 245, .9) !important;
    border: 1px solid rgba(0,0,0,.1) !important;
}
.cb-landing .section-light .waitlist-box input[type="email"] {
    background: #fff !important;
    border: 1px solid #ddd !important;
    color: var(--color-text-dark) !important;
}
.cb-landing .section-light .waitlist-box h3, .cb-landing .section-light .waitlist-box .waitlist-title { color: var(--color-text-dark) !important; }
.cb-landing .section-light .waitlist-box p { color: var(--color-text-subtle) !important; }

/* ── GetResponse Form inside waitlist-box ── */
.cb-landing .waitlist-box getresponse-form {
    display: block;
    margin: 0 auto;
}
.cb-landing .waitlist-box h3, .cb-landing .waitlist-box .waitlist-title {
    text-align: center;
    color: var(--color-primary) !important;
}
.cb-landing .final-cta .waitlist-box {
    margin: 0 auto;
    background: transparent !important;
    border: none !important;
    backdrop-filter: none !important;
    box-shadow: none !important;
}
.cb-landing .hero .waitlist-box:has(getresponse-form),
.cb-landing .mid-cta .waitlist-box:has(getresponse-form) {
    background: transparent !important;
    border: none !important;
    backdrop-filter: none !important;
    box-shadow: none !important;
}

/* ═══════════════════════════════════════
   Sales Mode - Prices, Buttons, Overlays
   ═══════════════════════════════════════ */

/* Green CTA button */
.cb-landing .cta-btn-green {
    background: linear-gradient(135deg, #5caf33 0%, #3d8c1f 100%);
    color: #fff;
    border: none;
    cursor: pointer;
    transition: transform .2s, box-shadow .2s;
}
.cb-landing .cta-btn-green:hover {
    transform: translateY(-2px);
    box-shadow: 0 6px 20px rgba(92,175,51,.4);
}

/* Sales mode price display */
.cb-landing .price-display { text-align: center; margin: 30px 0; }
.cb-landing .price-original { font-size: 1.6rem; color: #ff4444 !important; text-decoration: line-through; font-weight: 600; opacity: .7; }
body .cb-landing .price-sale,
body .cb-landing .price-sale span { font-size: 4.5rem !important; color: #ffff00 !important; font-weight: 900 !important; text-shadow: 0 2px 15px rgba(255,255,0,.3); letter-spacing: -0.03em; }
body .cb-landing .section-light .price-sale,
body .cb-landing .section-light .price-sale span { color: #ff2d75 !important; text-shadow: none; }
.cb-landing .price-currency { font-size: 1.5rem; }
.cb-landing .money-back-badge { text-align: center; color: var(--color-text-light) !important; font-weight: 800; font-size: 1.1rem; text-transform: uppercase; margin: 10px 0 20px; }
.cb-landing .savings-badge { text-align: center; margin: 8px 0 20px; font-size: 1.05rem; font-weight: 700; color: var(--color-success) !important; }
.cb-landing .savings-badge span { background: rgba(92,175,51,.15); padding: 6px 18px; border-radius: var(--radius-pill); border: 1px solid rgba(92,175,51,.3); }

/* Section-light price overrides */
.cb-landing .section-light .price-original { color: #cc0000 !important; }
.cb-landing .section-light .price-sale { color: #2d8a0e !important; }
.cb-landing .section-light .savings-badge { color: #2d8a0e !important; }

/* Mid-CTA in sales mode - override cyan to dark gradient */
.cb-landing .mid-cta .sales-block,
.cb-landing .mid-cta .closed-block { color: var(--color-text-light); }
.cb-landing .mid-cta .sales-block .price-original { color: #ff6b6b !important; }
.cb-landing .mid-cta .sales-block .price-sale,
.cb-landing .mid-cta .closed-block .price-sale { color: #7ddf4a !important; }
.cb-landing .mid-cta .savings-badge { color: #7ddf4a !important; }




@media (max-width: 768px) {
    .cb-landing .accordion-header {
        padding: 14px 12px;
        font-size: .9rem;
    }
    .cb-landing .accordion-duration {
        font-size: .72rem;
    }
    .cb-landing .accordion-meta {
        gap: 6px;
    }
    .cb-landing .sample-grid {
        grid-template-columns: 1fr !important;
    }
    .cb-landing .section-title {
        font-size: 1.3rem !important;
    }
    .cb-landing .bonus-grid {
        grid-template-columns: 1fr !important;
    }
}

/* Salient theme integration */
.cb-landing-page #ajax-content-wrap { padding: 0; }
.cb-landing-page .container-wrap { padding: 0 !important; }
.cb-landing-page .main-content { padding: 0 !important; margin: 0 !important; }
.cb-landing-page #footer-outer { display: none; }
.cb-landing { margin: 0; padding: 0; }
.cb-landing section { margin: 0; }




/* Value Breakdown - light section */
.cb-landing .value-breakdown-section {
    background: #f5f7fa !important;
    padding: 40px 20px 24px !important;
}
.cb-landing .value-breakdown-section .section-title { margin-bottom: 6px; }
.cb-landing .value-breakdown-section .value-subtitle { margin: 0 auto 14px; }
.cb-landing .value-breakdown-section .divider { margin: 6px auto 18px; }
.cb-landing .value-breakdown-section + .section-light.mid-cta {
    border-top: 2px solid #e0e0e0;
    padding-top: 40px !important;
    background: #f5f7fa !important;
}
/* Sample lessons play overlay & placeholder */
.cb-landing .sample-play-overlay {
    position: absolute;
    top: 0; left: 0; width: 100%; height: 100%;
    display: flex;
    align-items: center;
    justify-content: center;
    background: rgba(0,0,0,.3);
    transition: background .2s;
}
.cb-landing .sample-video-trigger:hover .sample-play-overlay {
    background: rgba(0,0,0,.15);
}
.cb-landing .sample-placeholder {
    width: 100%;
    height: 100%;
    display: flex;
    align-items: center;
    justify-content: center;
    background: linear-gradient(135deg, #1a1a2e 0%, #16213e 50%, #0f3460 100%);
    padding: 20px;
    text-align: center;
}
.cb-landing .sample-placeholder-title {
    color: rgba(255,255,255,.7);
    font-size: .95rem;
    font-weight: 600;
    line-height: 1.4;
}

/* Curriculum lesson items with duration */
.cb-landing .lesson-item {
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
    gap: 16px;
}
.cb-landing .lesson-title {
    flex: 1;
}
.cb-landing .lesson-duration {
    flex-shrink: 0;
    font-size: .85rem;
    color: rgba(255,255,255,.45);
    white-space: nowrap;
    text-decoration: underline;
    font-weight: 400;
}

/* Value Breakdown - light section color overrides */
.cb-landing .section-light .value-subtitle { color: #555 !important; }
.cb-landing .section-light .value-desc { color: #666 !important; }
.cb-landing .section-light .value-amount { color: #888 !important; }
.cb-landing .section-light .value-icon { color: #555 !important; }

/* Mid-CTA light section color overrides */
.cb-landing .section-light.mid-cta .mid-cta-buy-btn { color: #1a1a1a !important; }
.cb-landing .section-light.mid-cta .cb-original-price { color: #e74c3c !important; }
.cb-landing .section-light.mid-cta .mid-cta-deadline { color: #e74c3c !important; }
.cb-landing .section-light.mid-cta .mid-cta-intro { color: #333 !important; }
.cb-landing .section-light.mid-cta .mid-cta-urgency { color: #555 !important; }
.cb-landing .section-light.mid-cta .mid-cta-join-text { color: #222 !important; }
.cb-landing .section-light.mid-cta .mid-cta-sale-price .cb-sale-price,
.cb-landing .section-light.mid-cta .mid-cta-sale-price .cb-currency { color: #4caf50 !important; }
.cb-landing .section-light.mid-cta .countdown-number { color: #222 !important; }
.cb-landing .section-light.mid-cta .countdown-label { color: #888 !important; }

/* Fix currency colors in mid-CTA light */
.cb-landing .section-light.mid-cta .price-row .cb-currency { color: #e74c3c !important; text-decoration: line-through; }
.cb-landing .section-light.mid-cta .price-row .cb-original-price { color: #e74c3c !important; }

/* Regular Sales (closed-block) color overrides */
.cb-landing .section-light.mid-cta .closed-block .cb-regular-original-price { color: #e74c3c !important; }
.cb-landing .section-light.mid-cta .closed-block .price-row .cb-currency { color: #e74c3c !important; text-decoration: line-through; }
.cb-landing .section-light.mid-cta .closed-block .mid-cta-sale-price .cb-regular-price { color: #4caf50 !important; }
.cb-landing .section-light.mid-cta .closed-block .mid-cta-sale-price .cb-currency { color: #4caf50 !important; text-decoration: none; }
.cb-landing .section-light.mid-cta .closed-block .savings-badge { color: #555 !important; }
.cb-landing .section-light.mid-cta .closed-block .mid-cta-deadline { color: #27ae60 !important; }

/* ── Course Stats Bar ── */
.cb-landing .course-stats-section {
    background: #fff;
    border-top: 3px solid #1a1a2e;
    border-bottom: 1px solid #e0e0e0;
    padding: 0;
}
.cb-landing .course-stats-bar {
    display: flex;
    justify-content: space-around;
    align-items: center;
    max-width: 1200px;
    margin: 0 auto;
    padding: 18px 20px;
    flex-wrap: wrap;
    gap: 12px;
}
.cb-landing .course-stat-item {
    display: flex;
    align-items: center;
    gap: 10px;
}
.cb-landing .course-stat-icon {
    font-size: 1.6rem;
    color: #2196F3;
    flex-shrink: 0;
}
.cb-landing .course-stat-text {
    display: flex;
    flex-direction: column;
    line-height: 1.3;
}
.cb-landing .course-stat-label {
    font-size: .75rem;
    color: #888;
    text-transform: uppercase;
    letter-spacing: .5px;
    font-weight: 500;
}
.cb-landing .course-stat-value {
    font-size: .95rem;
    font-weight: 700;
    color: #1a1a2e;
}

/* ── Target Audience Two-Column Layout ── */
.cb-landing .target-audience-columns {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 20px 60px;
    max-width: 1000px;
    margin: 30px auto 0;
}
.cb-landing .target-audience-columns .arrow-list {
    list-style: none;
    padding: 0;
    margin: 0;
}
.cb-landing .target-audience-columns .arrow-list li {
    padding: 12px 0;
    padding-left: 22px;
    position: relative;
    font-size: 1rem;
    line-height: 1.5;
    color: #333;
    border-bottom: 1px solid #f0f0f0;
    list-style: none;
}
.cb-landing .target-audience-columns .arrow-list li:last-child {
    border-bottom: none;
}
.cb-landing .target-audience-columns .arrow-list li::before {
    content: '\2022';
    position: absolute;
    left: 0;
    color: #333;
    font-weight: 700;
    font-size: 1.2rem;
}

@media (max-width: 768px) {
    .cb-landing .course-stats-bar {
        display: grid;
        grid-template-columns: 1fr 1fr;
        gap: 14px 12px;
        padding: 18px 16px;
        align-items: start;
    }
    .cb-landing .course-stat-item {
        gap: 8px;
        align-items: flex-start;
    }
    .cb-landing .course-stat-icon {
        font-size: 1.3rem;
    }
    .cb-landing .course-stat-icon svg {
        width: 22px;
        height: 22px;
    }
    .cb-landing .course-stat-label {
        font-size: .65rem;
    }
    .cb-landing .course-stat-value {
        font-size: .85rem;
        line-height: 1.2;
    }
    .cb-landing .target-audience-columns {
        grid-template-columns: 1fr;
        gap: 0;
    }
}

/* Sticky bar waitlist message */
.cb-landing .sticky-waitlist-msg {
    font-weight: 600;
    font-size: .9rem;
    color: #333;
}

/* Mid-CTA waitlist centered layout */
.cb-landing .mid-cta-waitlist-centered {
    text-align: center;
    max-width: 600px;
    margin: 0 auto;
    padding: 20px 0;
}
.cb-landing .mid-cta-waitlist-heading {
    font-size: 1.5rem;
    font-weight: 700;
    color: #1a1a2e;
    margin-bottom: 10px;
}
.cb-landing .mid-cta-waitlist-desc {
    font-size: 1rem;
    color: #555;
    margin-bottom: 24px;
}

/* ── Bootcamp Courses Grid ── */
.cb-landing .bootcamp-courses-section {
    background: #f5f7fa;
    padding: 60px 20px;
}
.cb-landing .bootcamp-subtitle {
    text-align: center;
    color: #555;
    font-size: 1.1rem;
    margin: -10px auto 24px;
    max-width: 700px;
    line-height: 1.5;
}
.cb-landing .bootcamp-courses-grid {
    display: grid;
    grid-template-columns: 1fr;
    gap: 20px;
    max-width: 1100px;
    margin: 30px auto 0;
}
.cb-landing .bootcamp-course-card {
    background: #fff;
    border: 1px solid #e0e0e0;
    border-radius: 12px;
    padding: 24px;
    display: grid;
    grid-template-columns: 60px 220px 1fr;
    gap: 24px;
    align-items: center;
    transition: transform .2s, box-shadow .2s;
    position: relative;
}
.cb-landing .bootcamp-course-card:hover {
    transform: translateY(-2px);
    box-shadow: none;
}
.cb-landing .bootcamp-course-number {
    font-size: 2.2rem;
    font-weight: 900;
    color: #2196F3;
    text-align: center;
    line-height: 1;
}
.cb-landing .bootcamp-course-image {
    border-radius: 8px;
    overflow: hidden;
    aspect-ratio: 16/9;
    background: #f0f0f0;
}
.cb-landing .bootcamp-course-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
}
.cb-landing .bootcamp-course-content {
    display: flex;
    flex-direction: column;
    gap: 8px;
}
.cb-landing .bootcamp-course-title {
    font-size: 1.2rem;
    font-weight: 700;
    color: #1a1a2e;
    margin: 0;
    line-height: 1.3;
}
.cb-landing .bootcamp-course-desc {
    font-size: .95rem;
    color: #555;
    margin: 0;
    line-height: 1.5;
}
.cb-landing .bootcamp-course-stats {
    display: flex;
    flex-wrap: wrap;
    gap: 16px;
    margin-top: 4px;
}
.cb-landing .bootcamp-stat {
    display: flex;
    align-items: center;
    gap: 6px;
    font-size: .9rem;
    color: #333;
}
.cb-landing .bootcamp-stat strong {
    color: #1a1a2e;
    font-weight: 700;
}
.cb-landing .bootcamp-course-link {
    margin-top: 8px;
    font-size: .9rem;
    color: #2196F3;
    text-decoration: none;
    font-weight: 600;
    align-self: flex-start;
}
.cb-landing .bootcamp-courses-section .bootcamp-course-link:hover {
    text-decoration: underline;
}

@media (max-width: 768px) {
    .cb-landing .bootcamp-course-card {
        grid-template-columns: 1fr;
        gap: 14px;
        padding: 18px;
        text-align: center;
    }
    .cb-landing .bootcamp-course-number {
        font-size: 1.8rem;
    }
    .cb-landing .bootcamp-course-image {
        max-width: 280px;
        margin: 0 auto;
    }
    .cb-landing .bootcamp-course-content {
        align-items: center;
    }
    .cb-landing .bootcamp-course-stats {
        justify-content: center;
    }
}

/* PLC Bootcamp Roadmap */
.cb-landing .bootcamp-roadmap-section {
    background: #fff;
    padding: 60px 20px;
}
.cb-landing .bootcamp-roadmap-wrap {
    max-width: 1100px;
    margin: 30px auto 0;
    text-align: center;
}
.cb-landing .bootcamp-roadmap-img {
    width: 100%;
    height: auto;
    max-width: 1100px;
    border-radius: 12px;
    box-shadow: none;
}

/* Testimonials Slider */
.cb-landing .testimonials-slider-section .testimonial-slider {
    position: relative;
    max-width: 1200px;
    margin: 30px auto 0;
    padding: 0 60px;
}
.cb-landing .testimonial-track-wrap {
    overflow: hidden;
    width: 100%;
}
.cb-landing .testimonial-track {
    display: flex;
    transition: transform .5s ease;
}
.cb-landing .testimonials-slider-section .testimonial-card {
    flex: 0 0 33.333%;
    padding: 0 32px;
    box-sizing: border-box;
    position: relative;
    display: flex;
    flex-direction: column;
    min-height: 280px;
    background: transparent !important;
    border: none !important;
    border-radius: 0 !important;
}
.cb-landing .testimonials-slider-section .testimonial-card:not(:last-child)::after {
    content: "";
    position: absolute;
    top: 20%;
    bottom: 20%;
    right: 0;
    width: 1px;
    background: rgba(255,255,255,.15);
}
.cb-landing .testimonials-slider-section .testimonial-card::before {
    display: none;
}
.cb-landing .testimonials-slider-section .testimonial-card > * {
    position: relative;
    z-index: 1;
    padding-left: 12px;
    padding-right: 12px;
}
.cb-landing .testimonials-slider-section .testimonial-card > :first-child { padding-top: 24px; }
.cb-landing .testimonials-slider-section .testimonial-card > :last-child { padding-bottom: 24px; }
.cb-landing .testimonials-slider-section .testimonial-card .stars {
    color: #FFC107 !important;
    font-size: 1.15rem;
    letter-spacing: 3px;
    margin-bottom: 10px;
}
.cb-landing .testimonials-slider-section .testimonial-card blockquote {
    font-style: italic;
    line-height: 1.55;
    margin: 0 0 14px 0;
    color: rgba(255,255,255,.92);
    font-size: .95rem;
    flex-grow: 1;
}
.cb-landing .testimonials-slider-section .testimonial-card .author {
    font-weight: 700;
    color: #fff;
    margin: 6px 0 4px 0;
}
.cb-landing .testimonials-slider-section .testimonial-card .course {
    font-size: .85rem;
    color: #7fb3e0 !important;
    margin: 0;
    font-weight: 500;
}
.cb-landing .testimonial-arrow {
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    background: rgba(255,255,255,.08);
    border: 1px solid rgba(255,255,255,.2);
    color: #fff;
    width: 44px;
    height: 44px;
    border-radius: 50%;
    cursor: pointer;
    font-size: 1.2rem;
    display: flex;
    align-items: center;
    justify-content: center;
    z-index: 2;
    transition: background .2s;
}
.cb-landing .testimonial-arrow:hover {
    background: rgba(255,255,255,.18);
}
.cb-landing .testimonial-prev { left: 0; }
.cb-landing .testimonial-next { right: 0; }
.cb-landing .testimonial-dots {
    display: flex;
    justify-content: center;
    gap: 8px;
    margin-top: 24px;
}
.cb-landing .testimonial-dot {
    width: 10px;
    height: 10px;
    border-radius: 50%;
    background: rgba(255,255,255,.25);
    border: none;
    cursor: pointer;
    padding: 0;
    transition: background .2s, transform .2s;
}
.cb-landing .testimonial-dot.active {
    background: #2196F3;
    transform: scale(1.3);
}

@media (max-width: 1099px) {
    .cb-landing .testimonials-slider-section .testimonial-card {
        flex: 0 0 50%;
    }
}
@media (max-width: 699px) {
    .cb-landing .testimonials-slider-section .testimonial-slider {
        padding: 0 40px;
    }
    .cb-landing .testimonials-slider-section .testimonial-card {
        flex: 0 0 100%;
    }
    .cb-landing .testimonial-arrow {
        width: 36px;
        height: 36px;
    }
}

/* AB Course Modules Grid */
.cb-landing .ab-modules-section { background:#f5f7fa; padding:60px 20px; }
.cb-landing .ab-modules-grid {
    display:grid;
    grid-template-columns:repeat(2,1fr);
    gap:20px;
    max-width:1100px;
    margin:30px auto 0;
}
.cb-landing .ab-module-card {
    background:#fff;
    border:1px solid #e0e0e0;
    border-radius:12px;
    padding:24px 24px 20px;
    display:flex;
    gap:18px;
    transition:transform .2s, box-shadow .2s;
}
.cb-landing .ab-module-card:hover { transform:translateY(-2px); box-shadow:0 8px 24px rgba(0,0,0,.08); }
.cb-landing .ab-module-num {
    flex:0 0 48px;
    height:48px;
    border-radius:50%;
    background:#2196F3;
    color:#fff;
    font-size:1.3rem;
    font-weight:800;
    display:flex;
    align-items:center;
    justify-content:center;
}
.cb-landing .ab-module-body { flex:1; }
.cb-landing .ab-module-title { font-size:1.1rem; font-weight:700; color:#1a1a2e; margin:2px 0 6px; line-height:1.3; }
.cb-landing .ab-module-desc { font-size:.92rem; color:#555; line-height:1.5; margin:0 0 12px; }
.cb-landing .ab-module-meta { display:flex; gap:16px; flex-wrap:wrap; }
.cb-landing .ab-module-meta span { display:flex; align-items:center; gap:6px; font-size:.85rem; color:#333; }
.cb-landing .ab-module-meta strong { color:#1a1a2e; }
.cb-landing .ab-module-meta svg { flex-shrink:0; }
@media (max-width:768px){
    .cb-landing .ab-modules-grid { grid-template-columns:1fr; }
    .cb-landing .ab-module-card { padding:18px; }
}

/* Fix mid-cta waitlist desc color on light bg */
.cb-landing .section-light.mid-cta .mid-cta-waitlist-desc { color: #555 !important; }
.cb-landing .section-light.mid-cta .mid-cta-waitlist-heading { color: #1a1a2e !important; }

/* Landing minimal footer */
.cb-landing-footer {
    background:#0a0a14;
    padding:18px 20px;
    border-top:1px solid rgba(255,255,255,.06);
}
.cb-landing-footer-inner {
    max-width:1200px;
    margin:0 auto;
    display:flex;
    justify-content:space-between;
    align-items:center;
    flex-wrap:wrap;
    gap:12px;
    font-size:.85rem;
    color:#888;
}
.cb-landing-footer-copy { color:#888; }
.cb-landing-footer-links { display:flex; gap:20px; }
.cb-landing-footer-links a {
    color:#aaa;
    text-decoration:none;
    transition:color .2s;
}
.cb-landing-footer-links a:hover { color:#fff; text-decoration:underline; }
@media (max-width:600px) {
    .cb-landing-footer-inner { flex-direction:column; text-align:center; gap:8px; }
}


/* === Edumall theme compatibility (kursy.controlbyte.pl) === */
.cb-landing .hero { height: auto !important; min-height: 0 !important; }
.cb-landing .hero .container { height: auto !important; }


/* === Sekcje grid-2 bez media: pełna szerokość zamiast pustej połowy === */
.cb-landing .grid-2:has(> :only-child){ grid-template-columns:1fr !important; }
.cb-landing .grid-2:has(> :only-child) > *{ max-width:860px; margin-left:auto; margin-right:auto; }


/* === Ukryj duplikat tytułu od motywu Edumall na landingach === */
body:has(.cb-landing) #page-title-bar{ display:none !important; }


/* === Obrazki w hero i w sekcjach grid-2: skalowanie === */
.cb-landing .hero-video-wrap img{ width:100%; height:auto; display:block; }
.cb-landing .grid-2 img{ max-width:100%; height:auto; display:block; border-radius:12px; }








/* === CBLP FEATURES 2COL === */
.cb-landing .features-checklist-2col {
    display: grid !important;
    grid-template-columns: 340px minmax(0, 640px) !important;
    justify-content: center !important;
    align-items: center !important;
    gap: 48px !important;
    max-width: 1050px !important;
    margin: 0 auto !important;
}
.cb-landing .features-checklist-2col .feature-img {
    width: 340px !important;
    height: 340px !important;
    max-width: 340px !important;
    border-radius: 16px !important;
    aspect-ratio: 1 / 1 !important;
    object-fit: cover !important;
    display: block !important;
}
.cb-landing .features-checklist-2col .check-list-2col {
    column-count: 2 !important;
    column-gap: 40px !important;
    padding: 0 !important;
    margin: 0 !important;
    list-style: none !important;
}
.cb-landing .features-checklist-2col .check-list-2col li {
    display: flex !important;
    align-items: flex-start !important;
    gap: 10px !important;
    break-inside: avoid !important;
    margin: 0 0 18px 0 !important;
    padding: 0 !important;
    line-height: 1.45 !important;
    font-size: 1rem !important;
    font-weight: 700 !important;
    color: #1a1a2e !important;
}
.cb-landing .features-checklist-2col .check-list-2col li::before {
    content: "→" !important;
    color: #2196F3 !important;
    font-weight: 800 !important;
    font-size: 1rem !important;
    line-height: 1.45 !important;
    flex-shrink: 0 !important;
    position: static !important;
}
@media (max-width: 899px) {
    .cb-landing .features-checklist-2col {
        grid-template-columns: 1fr !important;
        gap: 32px !important;
    }
    .cb-landing .features-checklist-2col .feature-img {
        width: 280px !important;
        height: 280px !important;
        margin: 0 auto !important;
    }
    .cb-landing .features-checklist-2col .check-list-2col {
        column-count: 1 !important;
    }
}
/* === END FEATURES 2COL === */

/* === CBLP TESTIMONIAL UNIFORM v5 === */
.cb-landing .testimonials-slider-section .testimonial-track {
    align-items: stretch;
}
.cb-landing .testimonials-slider-section .testimonial-card {
    padding: 0 24px;
    display: flex;
    flex-direction: column;
    min-height: 340px;
}
.cb-landing .testimonials-slider-section .testimonial-card blockquote {
    display: -webkit-box;
    -webkit-line-clamp: 11;
    -webkit-box-orient: vertical;
    line-clamp: 11;
    overflow: hidden;
    position: relative;
    max-height: 17.5em;
    flex-grow: 0;
    font-size: .95rem;
    line-height: 1.55;
    margin: 0 0 10px 0;
    color: rgba(255,255,255,.92);
    font-style: italic;
    transition: max-height .3s ease;
}
.cb-landing .testimonials-slider-section .testimonial-card blockquote::after {
    content: "";
    position: absolute;
    left: 0;
    right: 0;
    bottom: 0;
    height: 2em;
    background: linear-gradient(to bottom, rgba(10,10,26,0), rgba(10,10,26,.9));
    pointer-events: none;
    transition: opacity .2s;
}
.cb-landing .testimonials-slider-section .testimonial-card.expanded blockquote {
    -webkit-line-clamp: unset;
    line-clamp: unset;
    -webkit-box-orient: unset;
    display: block;
    max-height: none;
    overflow: visible;
}
.cb-landing .testimonials-slider-section .testimonial-card.expanded blockquote::after {
    opacity: 0;
}
.cb-landing .testimonials-slider-section .testimonial-card .cbb-toggle-more {
    align-self: flex-start;
    background: transparent;
    color: #7fb3e0;
    border: none;
    padding: 4px 0;
    font-weight: 600;
    font-size: .85rem;
    cursor: pointer;
    margin: 0 0 12px 0;
    text-decoration: underline;
    text-underline-offset: 3px;
}
.cb-landing .testimonials-slider-section .testimonial-card .cbb-toggle-more:hover {
    color: #b3d4f0;
}
.cb-landing .testimonials-slider-section .testimonial-card .stars,
.cb-landing .testimonials-slider-section .testimonial-card .author,
.cb-landing .testimonials-slider-section .testimonial-card .course {
    flex-shrink: 0;
}
.cb-landing .testimonials-slider-section .testimonial-card .author {
    margin-top: auto;
}
.cb-landing .testimonials-slider-section .testimonial-card:not(:last-child)::after {
    top: 24px;
    bottom: 24px;
}
/* === END TESTIMONIAL UNIFORM v5 === */


/* === CBLP BUNDLES === */
.cb-landing .bundles-section { padding: 60px 0; }
.cb-landing .bundles-list { display: flex; flex-direction: column; gap: 32px; max-width: 1200px; margin: 40px auto 0; }
.cb-landing .bundle-row {
    display: grid;
    grid-template-columns: 1fr 280px;
    background: #fff;
    border-radius: 20px;
    box-shadow: 0 6px 24px rgba(0,0,0,.06);
    overflow: hidden;
    position: relative;
    border: 1px solid #e5e7eb;
}
.cb-landing .bundle-row.has-badge { border-color: #2196F3; box-shadow: 0 8px 32px rgba(33,150,243,.12); }
.cb-landing .bundle-badge {
    position: absolute; top: -14px; left: 32px;
    background: linear-gradient(90deg, #2196F3, #1976D2);
    color: #fff; padding: 6px 14px; border-radius: 999px;
    font-size: .78rem; font-weight: 800; letter-spacing: .06em; text-transform: uppercase;
    z-index: 2;
}
.cb-landing .bundle-courses {
    display: flex; align-items: stretch;
    padding: 40px 24px 32px;
    gap: 12px;
}
.cb-landing .bundle-plus {
    display: flex; align-items: center; justify-content: center;
    font-size: 2.4rem; font-weight: 300; color: #94a3b8;
    padding: 0 4px; min-width: 32px; align-self: center;
}
.cb-landing .bundle-course { flex: 1; min-width: 0; display: flex; flex-direction: column; }
.cb-landing .bundle-course__img {
    aspect-ratio: 4 / 3;
    background-size: cover; background-position: center;
    border-radius: 12px;
    background-color: #f1f5f9;
    margin-bottom: 12px;
    border: 1px solid #e5e7eb;
}
.cb-landing .bundle-course__name {
    font-size: 1rem; font-weight: 700; color: #0f172a;
    margin: 0 0 10px 0; line-height: 1.35;
    min-height: 2.6em;
}
.cb-landing .bundle-course__bullets {
    list-style: none; padding: 0; margin: 0;
    display: flex; flex-direction: column; gap: 6px;
}
.cb-landing .bundle-course__bullets li {
    font-size: .85rem; color: #475569; line-height: 1.5;
    padding-left: 18px; position: relative;
}
.cb-landing .bundle-course__bullets li::before {
    content: "✓"; position: absolute; left: 0; top: 0;
    color: #16a34a; font-weight: 800;
}
.cb-landing .bundle-price {
    background: linear-gradient(180deg, #f8fafc, #eef2f7);
    border-left: 1px solid #e5e7eb;
    padding: 32px 24px;
    display: flex; flex-direction: column; align-items: center; text-align: center;
    justify-content: center; gap: 12px;
}
.cb-landing .bundle-price__label {
    font-size: .72rem; font-weight: 700; letter-spacing: .1em; color: #64748b; text-transform: uppercase;
}
.cb-landing .bundle-price__old {
    color: #dc2626 !important;
    text-decoration: line-through;
    text-decoration-color: #dc2626;
    font-size: 1.35rem;
    font-weight: 700;
    line-height: 1;
}
.cb-landing .bundle-price__old span { color: #dc2626 !important; }
.cb-landing .bundle-price__new {
    display: flex; align-items: baseline; gap: 4px;
    font-weight: 800; color: #16a34a;
    letter-spacing: -.02em;
    line-height: 1;
}
.cb-landing .bundle-price__new .amount { font-size: 2.8rem; }
.cb-landing .bundle-price__new .cur    { font-size: 1.4rem; }
.cb-landing .bundle-price__savings {
    background: #dcfce7; color: #14532d;
    padding: 6px 10px; border-radius: 8px;
    font-size: .8rem; font-weight: 700;
}
.cb-landing .bundle-price__btn {
    display: block; width: 100%; box-sizing: border-box;
    padding: 14px 20px; margin-top: 6px;
    background: #16a34a !important; color: #fff !important;
    border-radius: 999px; text-decoration: none;
    font-weight: 800; font-size: .95rem; letter-spacing: .02em;
    transition: transform .2s, box-shadow .2s;
    text-align: center;
}
.cb-landing .bundle-price__btn:hover { transform: translateY(-1px); background: #15803d !important; box-shadow: 0 6px 16px rgba(22,163,74,.3); }
.cb-landing .bundle-price__note { font-size: .75rem; color: #64748b; }

@media (max-width: 899px) {
    .cb-landing .bundle-row { grid-template-columns: 1fr; }
    .cb-landing .bundle-courses { flex-wrap: wrap; padding: 32px 20px 20px; }
    .cb-landing .bundle-plus { width: 100%; padding: 4px 0; }
    .cb-landing .bundle-price { border-left: none; border-top: 1px solid #e5e7eb; }
    .cb-landing .bundle-badge { left: 20px; }
}
@media (max-width: 599px) {
    .cb-landing .bundle-courses { flex-direction: column; padding: 32px 16px 16px; }
    .cb-landing .bundle-course__img { aspect-ratio: 16/9; }
    .cb-landing .bundle-course__name { min-height: auto; }
}
/* === END BUNDLES === */

/* === CBLP BUNDLE BTN FIX v2.2.3 === */
body .cb-landing .bundle-price a.bundle-price__btn,
body .cb-landing .bundle-price a.bundle-price__btn:link,
body .cb-landing .bundle-price a.bundle-price__btn:visited,
body .cb-landing .bundle-price a.bundle-price__btn:active {
    color: #fff !important;
    background: #16a34a !important;
}
body .cb-landing .bundle-price a.bundle-price__btn:hover {
    color: #fff !important;
    background: #15803d !important;
}
/* === END BTN FIX === */

/* === CBLP BUNDLE IMG FIX v2.2.4 - full format, smaller === */
.cb-landing .bundles-list { max-width: 1150px; }
.cb-landing .bundle-courses { padding: 36px 20px 24px; gap: 8px; }
.cb-landing .bundle-course__img {
    aspect-ratio: 16 / 9 !important;
    background-size: contain !important;
    background-repeat: no-repeat !important;
    background-position: center !important;
    background-color: #f8fafc !important;
    max-width: 260px;
    margin: 0 auto 10px !important;
    width: 100%;
}
.cb-landing .bundle-course__name {
    font-size: .92rem !important;
    min-height: 2.4em !important;
    text-align: center;
}
.cb-landing .bundle-course__bullets li { font-size: .8rem !important; }
.cb-landing .bundle-plus { font-size: 2rem !important; min-width: 24px !important; }
/* === END BUNDLE IMG FIX === */

/* === CBLP BUNDLE COURSE LINK v2.2.5 === */
.cb-landing .bundle-course__link {
    display: inline-block;
    margin: 4px auto 0;
    padding: 6px 12px;
    background: transparent;
    color: #2196F3 !important;
    border: 1.5px solid #2196F3;
    border-radius: 999px;
    text-decoration: none !important;
    font-size: .75rem;
    font-weight: 700;
    letter-spacing: .02em;
    text-align: center;
    transition: all .15s ease;
    align-self: center;
}
.cb-landing .bundle-course__link:hover {
    background: #2196F3;
    color: #fff !important;
    transform: translateY(-1px);
}
.cb-landing .bundle-course { align-items: center; text-align: center; }
/* === END BUNDLE COURSE LINK === */

/* === CBLP BUNDLE v2.2.6 — img links + big plus === */
.cb-landing .bundle-plus {
    font-size: 4.5rem !important;
    font-weight: 300 !important;
    color: #2196F3 !important;
    min-width: 60px !important;
    line-height: 1 !important;
    padding: 0 !important;
    text-shadow: 0 2px 8px rgba(33,150,243,.2);
}
a.bundle-course__img {
    display: block !important;
    cursor: pointer;
    transition: transform .2s ease, box-shadow .2s ease;
    text-decoration: none !important;
}
a.bundle-course__img:hover {
    transform: translateY(-2px);
    box-shadow: 0 8px 20px rgba(33,150,243,.15);
    border-color: #2196F3 !important;
}
.cb-landing .bundle-course__name a {
    color: #0f172a !important;
    text-decoration: none !important;
    transition: color .15s;
}
.cb-landing .bundle-course__name a:hover {
    color: #2196F3 !important;
}
/* === END BUNDLE v2.2.6 === */

/* === CBLP BUNDLE v2.2.7 — bigger tiles, aligned text === */
.cb-landing .bundles-list { max-width: 1250px !important; }
.cb-landing .bundle-row {
    grid-template-columns: 1fr 300px !important;
}
.cb-landing .bundle-courses {
    padding: 48px 28px 32px !important;
    gap: 12px !important;
    align-items: stretch !important;
}
.cb-landing .bundle-course {
    display: flex !important;
    flex-direction: column !important;
    align-items: center !important;
    text-align: center !important;
    justify-content: flex-start !important;
    flex: 1 !important;
}
.cb-landing .bundle-course__img {
    aspect-ratio: 16 / 9 !important;
    background-size: contain !important;
    background-color: #f8fafc !important;
    max-width: 360px !important;
    width: 100% !important;
    margin: 0 auto 14px !important;
    border-radius: 12px !important;
    border: 1px solid #e5e7eb !important;
}
.cb-landing .bundle-course__name {
    font-size: 1rem !important;
    font-weight: 700 !important;
    line-height: 1.4 !important;
    color: #0f172a !important;
    margin: 0 !important;
    padding: 0 8px !important;
    min-height: 3.5em !important;
    display: flex !important;
    align-items: flex-start !important;
    justify-content: center !important;
    text-align: center !important;
    width: 100% !important;
    box-sizing: border-box !important;
}
.cb-landing .bundle-plus {
    font-size: 3.5rem !important;
    min-width: 40px !important;
    align-self: center !important;
    margin-bottom: 3.5em !important;   /* pushes plus up to align with images center */
}
@media (max-width: 899px) {
    .cb-landing .bundle-row { grid-template-columns: 1fr !important; }
    .cb-landing .bundle-plus { margin-bottom: 0 !important; }
}
/* === END BUNDLE v2.2.7 === */

/* === CBLP BUNDLE v2.2.8 — centered plus + badge fix === */
.cb-landing .bundle-plus {
    align-self: center !important;
    margin: 0 !important;     /* real vertical center of whole course area */
    padding-top: 0 !important;
    padding-bottom: 0 !important;
}
.cb-landing .bundle-courses {
    align-items: center !important;   /* center child items vertically */
}
.cb-landing .bundle-course {
    justify-content: center !important;
    align-self: stretch !important;
}
.cb-landing .bundle-badge {
    white-space: nowrap !important;
    font-size: .68rem !important;
    letter-spacing: .04em !important;
    padding: 5px 12px !important;
    top: -12px !important;
    max-width: none !important;
}
/* === END BUNDLE v2.2.8 === */

/* === CBLP BUNDLE v2.2.9 — polish === */
/* min-height for name accommodates 3 lines */
.cb-landing .bundle-course__name {
    min-height: 4.5em !important;
    align-items: center !important;
}
/* Solo tile: bigger image, single course fills space nicely */
.cb-landing .bundle-row .bundle-courses:not(:has(.bundle-plus)) .bundle-course__img,
.cb-landing .bundle-course:only-child .bundle-course__img {
    max-width: 460px !important;
}
.cb-landing .bundle-course:only-child {
    max-width: 500px;
    margin: 0 auto;
}
/* Section heading spacing above bundles */
.cb-landing .bundles-section .section-title { margin-top: 20px; }
.cb-landing .bundles-list { margin-top: 30px !important; }
/* Even out gaps between rows */
.cb-landing .bundles-list { gap: 28px !important; }
/* Make + more elegant */
.cb-landing .bundle-plus {
    color: #94a3b8 !important;
    text-shadow: none !important;
    font-size: 3rem !important;
    min-width: 32px !important;
}
/* === END BUNDLE v2.2.9 === */

/* === CBLP BUNDLE v2.3.0 — final polish === */
/* 3-course row: shrink images + tighter names so it doesn't overflow */
.cb-landing .bundle-row--3 .bundle-course__img { max-width: 280px !important; }
.cb-landing .bundle-row--3 .bundle-course__name {
    font-size: .9rem !important;
    line-height: 1.35 !important;
    min-height: 4em !important;
    padding: 0 4px !important;
}
.cb-landing .bundle-row--3 .bundle-plus { font-size: 2.4rem !important; min-width: 20px !important; }
.cb-landing .bundle-row--3 .bundle-courses { padding: 40px 20px 28px !important; gap: 8px !important; }

/* 2-course row: solid balanced size */
.cb-landing .bundle-row:not(.bundle-row--3):not(:has(.bundle-course:only-child)) .bundle-course__img {
    max-width: 340px !important;
}

/* Solo tile: slightly smaller so it doesn't tower */
.cb-landing .bundle-course:only-child .bundle-course__img { max-width: 400px !important; }
.cb-landing .bundle-course:only-child .bundle-course__name { min-height: 2.5em !important; }
.cb-landing .bundle-row:has(.bundle-course:only-child) .bundle-courses { padding: 40px 24px 28px !important; }

/* Better shadow/border on cards */
.cb-landing .bundle-row { transition: box-shadow .25s ease; }
.cb-landing .bundle-row:hover { box-shadow: 0 10px 32px rgba(0,0,0,.09); }
/* === END BUNDLE v2.3.0 === */

/* === CBLP BUNDLE v2.3.1 — badge overflow fix === */
body .cb-landing .bundle-row { overflow: visible !important; }
/* Image tiles still need rounded corners — apply directly */
body .cb-landing .bundle-course__img { overflow: hidden !important; }
/* Right price column need to keep its background rounded */
body .cb-landing .bundle-price { border-radius: 0 20px 20px 0 !important; }
@media (max-width: 899px) {
    body .cb-landing .bundle-price { border-radius: 0 0 20px 20px !important; }
}
/* === END v2.3.1 === */




/* === CBLP MEGA BUNDLE === */
.cb-landing .mega-bundle-section { padding: 70px 0 90px; background: #f8fafc; }
.cb-landing .mega-bundle-title { text-align: center; }
.cb-landing .mega-bundle-sub { text-align: center; max-width: 780px; margin: 0 auto 40px; color: #475569; font-size: 1.05rem; }

.cb-landing .mega-row {
    display: grid;
    grid-template-columns: minmax(0, 1fr) 320px;
    gap: 32px;
    align-items: stretch;
    max-width: 1200px;
    margin: 0 auto;
    background: #fff;
    border: 2px solid #2196F3;
    border-radius: 20px;
    padding: 32px;
    box-shadow: 0 10px 40px -12px rgba(15,23,42,.15);
}

.cb-landing .mega-row__thumbs {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 20px;
}
.cb-landing .mega-course { display: flex; flex-direction: column; gap: 8px; }
.cb-landing .mega-course__img {
    display: block; width: 100%; aspect-ratio: 16/10;
    background-size: cover; background-position: center;
    background-color: #eef2f7; border-radius: 10px;
    transition: transform .2s;
}
.cb-landing .mega-course__img:hover { transform: translateY(-3px); }
.cb-landing .mega-course__name {
    font-size: .9rem; font-weight: 700; line-height: 1.3;
    margin: 0; color: #0f172a; text-align: center;
}
.cb-landing .mega-course__name a { color: inherit; text-decoration: none; }
.cb-landing .mega-course__name a:hover { color: #2196F3; }
.cb-landing .mega-course__lessons { font-size: .78rem; color: #64748b; text-align: center; }

.cb-landing .mega-row__price {
    background: linear-gradient(180deg, #f8fafc 0%, #eef2f7 100%);
    border-radius: 14px;
    padding: 28px 22px;
    display: flex; flex-direction: column; align-items: center; justify-content: center;
    text-align: center; gap: 6px;
    align-self: stretch;
}
.cb-landing .mega-row__price-label {
    font-weight: 800; letter-spacing: .04em;
    font-size: .95rem; color: #0f172a; text-transform: uppercase;
    margin-bottom: 6px;
}
.cb-landing .mega-row__price-old {
    color: #dc2626 !important; font-weight: 700; font-size: 1.05rem;
}
.cb-landing .mega-row__price-old span {
    color: #dc2626 !important;
    text-decoration: line-through; text-decoration-color: #dc2626;
}
.cb-landing .mega-row__price-new {
    display: inline-flex; align-items: baseline; gap: 4px;
    color: #16a34a !important; font-weight: 900;
    margin: 2px 0 4px;
}
.cb-landing .mega-row__price-new .amount,
.cb-landing .mega-row__price-new .cur {
    color: #16a34a !important;
}
.cb-landing .mega-row__price-new .amount { font-size: clamp(2.4rem, 3.6vw, 3.2rem); letter-spacing: -.025em; line-height: 1; }
.cb-landing .mega-row__price-new .cur    { font-size: 1.3rem; font-weight: 800; }
.cb-landing .mega-row__price-savings {
    color: #16a34a !important; font-weight: 700; font-size: .95rem;
    margin-bottom: 12px;
}

.cb-landing a.mega-row__btn,
.cb-landing .mega-row__btn {
    display: inline-block; width: 100%;
    padding: 16px 22px;
    background: #16a34a !important; color: #ffffff !important;
    font-weight: 900; font-size: 1rem; letter-spacing: .04em;
    border-radius: 999px; text-decoration: none !important;
    text-transform: uppercase;
    box-shadow: 0 8px 22px rgba(22,163,74,.35);
    transition: transform .2s, box-shadow .2s, background .2s;
    white-space: nowrap; text-align: center;
    border: none;
}
.cb-landing a.mega-row__btn:hover,
.cb-landing a.mega-row__btn:focus,
.cb-landing a.mega-row__btn:visited,
.cb-landing .mega-row__btn:hover {
    background: #15803d !important; color: #ffffff !important;
    transform: translateY(-2px);
    box-shadow: 0 12px 28px rgba(22,163,74,.45);
}
.cb-landing .mega-row__note { font-size: .8rem; color: #64748b; margin-top: 10px; }

@media (max-width: 1099px) {
    .cb-landing .mega-row { grid-template-columns: 1fr; }
    .cb-landing .mega-row__thumbs { grid-template-columns: repeat(3, 1fr); }
    .cb-landing .mega-row__price { max-width: 460px; margin: 0 auto; width: 100%; }
}
@media (max-width: 640px) {
    .cb-landing .mega-bundle-section { padding: 40px 0; }
    .cb-landing .mega-row { padding: 18px; }
    .cb-landing .mega-row__thumbs { grid-template-columns: repeat(2, 1fr); gap: 14px; }
    .cb-landing .mega-course__name { font-size: .82rem; }
}
/* === END MEGA BUNDLE === */

/* === CBLP PAKIET UPSELL === */
.cb-landing .pakiet-upsell-section { padding: 70px 0; background: #f1f5f9; }
.cb-landing .pakiet-upsell {
    max-width: 1050px; margin: 0 auto;
    background: linear-gradient(135deg, #0f172a 0%, #1e3a5f 100%);
    color: #fff;
    border-radius: 24px;
    padding: 44px 48px;
    box-shadow: 0 20px 60px -20px rgba(15,23,42,.4);
    position: relative; overflow: hidden;
    text-align: center;
}
.cb-landing .pakiet-upsell::before {
    content: ""; position: absolute; top: -30%; right: -10%;
    width: 400px; height: 400px;
    background: radial-gradient(circle, rgba(22,163,74,.25) 0%, transparent 65%);
    pointer-events: none;
}
.cb-landing .pakiet-upsell__label {
    display: inline-block;
    background: #16a34a; color: #fff;
    font-weight: 800; font-size: .85rem; letter-spacing: .06em;
    padding: 8px 16px; border-radius: 999px;
    margin-bottom: 16px; text-transform: uppercase;
    position: relative; z-index: 1;
}
.cb-landing .pakiet-upsell__heading {
    font-size: clamp(1.4rem, 2.5vw, 2.1rem);
    font-weight: 900; margin: 0 0 12px;
    line-height: 1.2; color: #fff;
    position: relative; z-index: 1;
}
.cb-landing .pakiet-upsell__subtitle {
    font-size: 1.02rem; color: rgba(255,255,255,.85);
    margin: 0 auto 28px; max-width: 720px; line-height: 1.5;
    position: relative; z-index: 1;
}
.cb-landing .pakiet-upsell__thumbs {
    display: flex; justify-content: center; align-items: center;
    gap: 8px; margin: 0 auto 32px;
    flex-wrap: wrap; max-width: 800px;
    position: relative; z-index: 1;
}
.cb-landing .pakiet-upsell__thumb {
    width: 76px; height: 48px;
    background-size: cover; background-position: center;
    background-color: #334155;
    border-radius: 8px;
    border: 2px solid rgba(255,255,255,.15);
    display: inline-block;
}
.cb-landing .pakiet-upsell__more {
    display: inline-flex; align-items: center; justify-content: center;
    background: rgba(22,163,74,.9); color: #fff;
    font-weight: 900; font-size: 1rem;
    border-color: rgba(22,163,74,1);
}
.cb-landing .pakiet-upsell__cta-row {
    display: flex; flex-direction: column; align-items: center; justify-content: center;
    gap: 20px;
    position: relative; z-index: 1;
}
.cb-landing .pakiet-upsell__price {
    display: flex; align-items: baseline; gap: 10px; flex-wrap: wrap; justify-content: center;
}
.cb-landing .pakiet-upsell__price-old {
    color: rgba(255,255,255,.5);
    text-decoration: line-through;
    font-size: 1.1rem; font-weight: 700;
}
.cb-landing .pakiet-upsell__price-new {
    color: #4ade80 !important; font-weight: 900;
    font-size: 2rem; letter-spacing: -.02em;
}
.cb-landing .pakiet-upsell__savings {
    background: rgba(22,163,74,.2);
    color: #86efac; font-weight: 700;
    padding: 4px 12px; border-radius: 999px;
    font-size: .85rem;
}
.cb-landing a.pakiet-upsell__btn,
.cb-landing .pakiet-upsell__btn {
    display: inline-block;
    padding: 16px 32px;
    background: #16a34a !important; color: #fff !important;
    font-weight: 900; font-size: 1rem; letter-spacing: .04em;
    border-radius: 999px; text-decoration: none !important;
    text-transform: uppercase;
    box-shadow: 0 8px 22px rgba(22,163,74,.4);
    transition: transform .2s, box-shadow .2s, background .2s;
    white-space: nowrap;
}
.cb-landing a.pakiet-upsell__btn:hover,
.cb-landing .pakiet-upsell__btn:hover {
    background: #15803d !important; color: #fff !important;
    transform: translateY(-2px);
    box-shadow: 0 12px 28px rgba(22,163,74,.5);
}
@media (max-width: 640px) {
    .cb-landing .pakiet-upsell { padding: 28px 20px; border-radius: 16px; }
    .cb-landing .pakiet-upsell__thumb { width: 58px; height: 36px; }
    .cb-landing .pakiet-upsell__cta-row { flex-direction: column; gap: 16px; }
}
/* === END PAKIET UPSELL === */

/* === CBLP HERO COMPACT === */
/* Smaller hero video so sales_open CTA (countdown + button) stays above the fold */
.cb-landing .hero { padding: 32px 20px 28px !important; }
.cb-landing .hero h1 {
    font-size: clamp(1.5rem, 3.2vw, 2.1rem) !important;
    margin-bottom: 18px !important;
    line-height: 1.15 !important;
}
.cb-landing .hero-sub { margin-bottom: 6px !important; font-size: .82rem !important; }
.cb-landing .hero-video-wrap {
    max-width: 780px !important;
    margin: 0 auto 18px !important;
}
.cb-landing .hero-tagline {
    font-size: 1rem !important;
    margin-bottom: 20px !important;
}
.cb-landing .hero .sales-box,
.cb-landing .hero .waitlist-box {
    max-width: 560px !important;
    padding: 22px 24px !important;
}
.cb-landing .hero .cb-countdown { margin: 12px 0 !important; }
.cb-landing .hero .cta-btn { padding: 14px 32px !important; font-size: 1rem !important; }
@media (max-width: 720px) {
    .cb-landing .hero { padding: 24px 16px 24px !important; }
    .cb-landing .hero-video-wrap { max-width: 100% !important; margin-bottom: 14px !important; }
    .cb-landing .hero h1 { font-size: clamp(1.3rem, 5.5vw, 1.7rem) !important; margin-bottom: 12px !important; }
    .cb-landing .hero-tagline { font-size: .92rem !important; margin-bottom: 14px !important; }
}
/* === END HERO COMPACT === */

/* === CBLP HERO PRICE CENTER === */
.cb-landing .hero .sales-block,
.cb-landing .hero .closed-block,
.cb-landing .hero .sales-box,
.cb-landing .hero .waitlist-box {
    text-align: center !important;
    margin-left: auto !important;
    margin-right: auto !important;
}
.cb-landing .hero .sales-block .price-row,
.cb-landing .hero .closed-block .price-row {
    display: flex !important;
    align-items: baseline !important;
    justify-content: center !important;
    flex-wrap: wrap !important;
    gap: 4px !important;
    text-align: center !important;
}
.cb-landing .hero .savings-badge,
.cb-landing .hero .seats-remaining,
.cb-landing .hero .cb-countdown,
.cb-landing .hero .registration-closes,
.cb-landing .hero .money-back-badge {
    text-align: center !important;
    justify-content: center !important;
}
.cb-landing .hero .cb-countdown { display: flex !important; }
/* === END HERO PRICE CENTER === */

/* === CBLP HERO SPACING FINE === */
.cb-landing .hero h1 { margin-bottom: 34px !important; }
.cb-landing .hero-tagline { margin-bottom: 8px !important; }
.cb-landing .hero .sales-block,
.cb-landing .hero .closed-block,
.cb-landing .hero .waitlist-block { margin-top: 6px !important; }
/* === END HERO SPACING FINE === */

/* === CBLP INSTRUCTORS MULTI === */
.cb-landing .instructor-profiles { display: flex; justify-content: center; }
.cb-landing .instructor-profiles--multi {
    display: grid; grid-template-columns: repeat(2, 1fr);
    gap: 40px; align-items: start;
    max-width: 1200px; margin: 0 auto;
}
@media (max-width: 899px) {
    .cb-landing .instructor-profiles--multi { grid-template-columns: 1fr; gap: 32px; }
}
/* === END INSTRUCTORS MULTI === */

/* === CBLP INSTRUCTORS MULTI STACK === */
.cb-landing .instructor-profiles--multi .instructor-profile {
    display: flex !important;
    flex-direction: column !important;
    align-items: center !important;
    text-align: center !important;
    gap: 20px !important;
}
.cb-landing .instructor-profiles--multi .instructor-photo-wrap {
    flex: 0 0 auto !important;
    width: 220px !important;
    height: 220px !important;
    max-width: 220px !important;
}
.cb-landing .instructor-profiles--multi .instructor-photo-wrap img {
    width: 100% !important; height: 100% !important; object-fit: cover !important;
    border-radius: 50% !important;
}
.cb-landing .instructor-profiles--multi .instructor-info {
    width: 100% !important;
    max-width: 480px !important;
    text-align: center !important;
}
.cb-landing .instructor-profiles--multi .instructor-blockquote {
    text-align: left !important;
    font-size: 1rem !important;
    line-height: 1.6 !important;
    max-width: 100% !important;
}
/* === END INSTRUCTORS MULTI STACK === */

/* === CBLP SAMPLE LESSONS === */
.cb-landing .sample-lessons-section { padding: 70px 0 90px; }
.cb-landing .sample-lessons-sub { text-align: center; max-width: 780px; margin: 0 auto 40px; opacity: .85; }
.cb-landing .sample-lessons-grid {
    max-width: 1240px; margin: 0 auto; padding: 0 24px;
    display: grid; grid-template-columns: repeat(4, 1fr);
    gap: 20px;
}
@media (max-width: 1100px) { .cb-landing .sample-lessons-grid { grid-template-columns: repeat(2, 1fr) !important; } }
@media (max-width: 640px)  { .cb-landing .sample-lessons-grid { grid-template-columns: 1fr !important; } }
.cb-landing .sample-lesson {
    display: flex; flex-direction: column;
    background: rgba(255,255,255,.04);
    border: 1px solid rgba(255,255,255,.1);
    border-radius: 16px;
    overflow: hidden;
    text-decoration: none !important;
    color: #fff !important;
    transition: transform .25s, box-shadow .25s, border-color .25s;
}
.cb-landing .sample-lesson:hover {
    transform: translateY(-6px);
    box-shadow: 0 24px 48px -18px rgba(0,0,0,.5);
    border-color: rgba(34,196,234,.5);
}
.cb-landing .sample-lesson__media {
    position: relative;
    aspect-ratio: 16/9;
    background: #1a1a2e center/cover no-repeat;
    display: flex; align-items: center; justify-content: center;
}
.cb-landing .sample-lesson__media::before {
    content: ""; position: absolute; inset: 0;
    background: linear-gradient(180deg, rgba(0,0,0,.15) 0%, rgba(0,0,0,.45) 100%);
    pointer-events: none;
}
.cb-landing .sample-lesson__play {
    position: relative; z-index: 1;
    width: 62px; height: 62px; border-radius: 50%;
    background: linear-gradient(135deg, #22d3ee 0%, #06b6d4 100%);
    color: #001f3f; font-size: 1.4rem;
    display: flex; align-items: center; justify-content: center;
    box-shadow: 0 10px 30px rgba(34,196,234,.5);
    transition: transform .2s;
    padding-left: 5px;
}
.cb-landing .sample-lesson:hover .sample-lesson__play { transform: scale(1.1); }
.cb-landing .sample-lesson__dur {
    position: absolute; bottom: 10px; right: 10px; z-index: 1;
    background: rgba(0,0,0,.7); color: #fff;
    padding: 3px 10px; border-radius: 6px;
    font-size: .82rem; font-weight: 700;
    letter-spacing: .02em;
}
.cb-landing .sample-lesson__body {
    padding: 20px 22px;
    display: flex; flex-direction: column; gap: 10px;
}
.cb-landing .sample-lesson__eyebrow {
    font-size: .72rem; font-weight: 800; letter-spacing: .12em;
    text-transform: uppercase; color: #22d3ee;
}
.cb-landing .sample-lesson__title {
    font-size: 1.05rem; font-weight: 800; line-height: 1.35;
    margin: 0; color: #fff;
}
.cb-landing .sample-lesson__link {
    margin-top: 6px; color: #22d3ee; font-weight: 800;
    font-size: .92rem; display: inline-flex; align-items: center; gap: 6px;
    transition: gap .2s;
}
.cb-landing .sample-lesson:hover .sample-lesson__link { gap: 12px; }

@media (max-width: 640px) {
    .cb-landing .sample-lessons-section { padding: 50px 0; }
    .cb-landing .sample-lessons-grid { grid-template-columns: 1fr; }
}
/* === END SAMPLE LESSONS === */


/* === CBLP CURRICULUM V2 === */
.cb-landing .curriculum-section { padding: 60px 0 90px; }

/* Light variant (default) */
.cb-landing .curriculum-v2--light { max-width: 900px; margin: 0 auto; }
.cb-landing .curriculum-v2--light .accordion-item {
    background: #fff !important; border: 1px solid #e2e8f0 !important;
    border-radius: 12px !important; margin-bottom: 10px !important;
    overflow: hidden !important; box-shadow: 0 2px 6px rgba(15,23,42,.04);
}
.cb-landing .curriculum-v2--light .accordion-item:has(.accordion-header.active) {
    border-color: #cbd5e1 !important;
}
.cb-landing .curriculum-v2--light .accordion-header {
    padding: 18px 22px !important; font-size: 1.05rem !important;
    font-weight: 700 !important; color: #0f172a !important; background: transparent !important;
}
.cb-landing .curriculum-v2--light .accordion-header:hover { color: #0f172a !important; background: #f8fafc !important; }
.cb-landing .curriculum-v2--light .accordion-header.active { background: #f8fafc !important; border-bottom: 1px solid #e2e8f0 !important; }
.cb-landing .curriculum-v2--light .accordion-duration { color: #64748b !important; text-decoration: none !important; }
.cb-landing .curriculum-v2--light .arrow { color: #94a3b8 !important; }
.cb-landing .curriculum-v2--light .accordion-body { color: #334155 !important; background: #f8fafc !important; }
.cb-landing .curriculum-v2--light .accordion-body.open { padding: 12px 0 !important; max-height: 3000px !important; }
.cb-landing .curriculum-v2--light .accordion-body ul {
    list-style: none !important; padding: 0 !important; margin: 0 !important;
    display: flex; flex-direction: column;
}
.cb-landing .curriculum-v2--light .accordion-body ul li.lesson-item {
    display: grid !important;
    grid-template-columns: auto auto 1fr auto;
    align-items: center;
    gap: 12px;
    padding: 12px 22px !important;
    margin: 0 !important;
    background: transparent !important;
    border: none !important;
    border-radius: 0 !important;
    color: #334155 !important;
    font-size: .95rem;
    transition: background .15s;
}
.cb-landing .curriculum-v2--light .accordion-body ul li.lesson-item:hover { background: rgba(14,165,233,.05) !important; }
.cb-landing .curriculum-v2--light .accordion-body ul li.lesson-item::before { content: none !important; }
.cb-landing .curriculum-v2--light .lesson-icon { color: #f59e0b; font-size: 1.05rem; }
.cb-landing .curriculum-v2--light .lesson-num { color: #64748b; font-weight: 700; font-size: .9rem; min-width: 32px; }
.cb-landing .curriculum-v2--light .lesson-title { color: #0f172a; }
.cb-landing .curriculum-v2--light .lesson-duration {
    background: #eef2f7; color: #64748b;
    padding: 3px 12px; border-radius: 999px;
    font-size: .78rem; font-weight: 600;
    white-space: nowrap;
}

/* Dark variant fallback (if theme=dark on any landing) */
.cb-landing .curriculum-v2--dark .accordion-item {
    background: rgba(255,255,255,.03) !important; border: 1px solid rgba(255,255,255,.08) !important;
    border-radius: 12px !important; margin-bottom: 10px !important; overflow: hidden;
}
.cb-landing .curriculum-v2--dark .accordion-item:has(.accordion-header.active) {
    border-color: rgba(34,196,234,.4) !important; background: rgba(34,196,234,.05) !important;
}
.cb-landing .curriculum-v2--dark .accordion-header { padding: 18px 22px !important; color: #fff !important; }
.cb-landing .curriculum-v2--dark .accordion-header.active { border-bottom: 1px solid rgba(34,196,234,.2) !important; }
.cb-landing .curriculum-v2--dark .accordion-body { padding: 0 !important; background: rgba(0,0,0,.15) !important; color: #cbd5e1 !important; }
.cb-landing .curriculum-v2--dark .accordion-body.open { padding: 12px 0 !important; }
.cb-landing .curriculum-v2--dark .accordion-body ul { list-style: none !important; padding: 0 !important; margin: 0 !important; }
.cb-landing .curriculum-v2--dark .accordion-body ul li.lesson-item {
    display: grid !important; grid-template-columns: auto auto 1fr auto;
    gap: 12px; padding: 10px 22px !important; align-items: center;
    border: none !important; background: transparent !important; border-radius: 0 !important;
}
.cb-landing .curriculum-v2--dark .accordion-body ul li.lesson-item:hover { background: rgba(34,196,234,.08) !important; }
.cb-landing .curriculum-v2--dark .accordion-body ul li.lesson-item::before { content: none !important; }
.cb-landing .curriculum-v2--dark .lesson-icon { color: #f59e0b; }
.cb-landing .curriculum-v2--dark .lesson-num { color: rgba(255,255,255,.55); font-weight: 700; font-size: .9rem; min-width: 32px; }
.cb-landing .curriculum-v2--dark .lesson-title { color: #fff; }
.cb-landing .curriculum-v2--dark .lesson-duration {
    background: rgba(255,255,255,.08); color: rgba(255,255,255,.7);
    padding: 3px 12px; border-radius: 999px;
    font-size: .78rem; font-weight: 600; white-space: nowrap;
}

@media (max-width: 640px) {
    .cb-landing .curriculum-v2 .accordion-body ul li.lesson-item {
        grid-template-columns: auto auto 1fr; row-gap: 4px;
    }
    .cb-landing .curriculum-v2 .lesson-duration { grid-column: 1 / -1; justify-self: start; margin-left: 44px; }
}
/* === END CURRICULUM V2 === */

/* === CBLP CURRICULUM UDEMY === */
/* Udemy-style: gray lesson text, minimal contrast, subtle */
.cb-landing .curriculum-v2--light .accordion-item {
    background: #fff !important;
    border: 1px solid #d1d7dc !important;
    border-radius: 6px !important;
    box-shadow: none !important;
    margin-bottom: 8px !important;
}
.cb-landing .curriculum-v2--light .accordion-header {
    padding: 16px 20px !important;
    font-size: 1rem !important;
    font-weight: 700 !important;
    color: #1c1d1f !important;
    background: #f7f9fa !important;
    border-radius: 6px !important;
}
.cb-landing .curriculum-v2--light .accordion-header.active {
    background: #f7f9fa !important;
    border-bottom: 1px solid #d1d7dc !important;
    border-radius: 6px 6px 0 0 !important;
}
.cb-landing .curriculum-v2--light .accordion-header:hover {
    background: #f0f2f5 !important;
    color: #1c1d1f !important;
}
.cb-landing .curriculum-v2--light .accordion-duration {
    color: #6a6f73 !important;
    font-size: .82rem !important;
    font-weight: 400 !important;
}
.cb-landing .curriculum-v2--light .arrow { color: #6a6f73 !important; font-size: .9rem !important; }

.cb-landing .curriculum-v2--light .accordion-body {
    background: #fff !important;
    color: #6a6f73 !important;
}
.cb-landing .curriculum-v2--light .accordion-body.open { padding: 8px 0 !important; }

.cb-landing .curriculum-v2--light .accordion-body ul li.lesson-item {
    padding: 10px 20px !important;
    gap: 10px !important;
    font-size: .9rem !important;
    color: #6a6f73 !important;
    background: #fff !important;
}
.cb-landing .curriculum-v2--light .accordion-body ul li.lesson-item:hover {
    background: #f7f9fa !important;
}
.cb-landing .curriculum-v2--light .lesson-icon {
    color: #6a6f73 !important;
    font-size: .95rem !important;
    opacity: .75;
}
.cb-landing .curriculum-v2--light .lesson-num {
    color: #6a6f73 !important;
    font-weight: 400 !important;
    font-size: .88rem !important;
    min-width: 28px !important;
}
.cb-landing .curriculum-v2--light .lesson-title {
    color: #6a6f73 !important;
    font-weight: 400 !important;
    font-size: .92rem !important;
    line-height: 1.4 !important;
}
.cb-landing .curriculum-v2--light .lesson-duration {
    background: transparent !important;
    color: #6a6f73 !important;
    padding: 0 !important;
    border-radius: 0 !important;
    font-size: .82rem !important;
    font-weight: 400 !important;
}
/* === END CURRICULUM UDEMY === */

/* === CBLP PROMO COURSES === */
.cb-landing .promo-courses-section { padding: 70px 0 100px; background: #f8fafc; }
.cb-landing .promo-sub { text-align: center; max-width: 780px; margin: 0 auto 40px; color: #475569; font-size: 1.05rem; }

.cb-landing .promo-cat { max-width: 1240px; margin: 0 auto 56px; padding: 0 24px; }
.cb-landing .promo-cat__heading {
    display: flex; align-items: center; gap: 14px;
    font-size: 1.5rem; font-weight: 800; color: #0f172a;
    margin: 0 0 28px; line-height: 1.2;
}
.cb-landing .promo-cat__heading::before {
    content: ""; display: inline-block; width: 5px; height: 32px;
    background: linear-gradient(180deg, #22d3ee, #0ea5e9); border-radius: 3px;
}
.cb-landing .promo-cat__grid {
    display: grid; grid-template-columns: repeat(auto-fill, minmax(300px, 1fr));
    gap: 24px;
}

.cb-landing .promo-card {
    display: flex; flex-direction: column;
    background: #fff; border: 1px solid #e2e8f0;
    border-radius: 16px; overflow: hidden;
    transition: all .25s;
    box-shadow: 0 2px 8px rgba(15,23,42,.04);
}
.cb-landing .promo-card:hover {
    transform: translateY(-6px);
    box-shadow: 0 30px 50px -20px rgba(15,23,42,.18);
    border-color: #0ea5e9;
}
.cb-landing .promo-card__media {
    position: relative; aspect-ratio: 16/10;
    background: #eef2f7 center/cover no-repeat;
}
.cb-landing .promo-card__badge {
    position: absolute; top: 12px; left: 12px;
    padding: 6px 14px; font-size: .7rem; font-weight: 800;
    letter-spacing: .06em; text-transform: uppercase;
    border-radius: 999px; color: #fff;
    box-shadow: 0 4px 12px rgba(0,0,0,.15);
}
.cb-landing .promo-card__badge--green  { background: linear-gradient(135deg, #10b981, #059669); }
.cb-landing .promo-card__badge--blue   { background: linear-gradient(135deg, #0ea5e9, #06b6d4); }
.cb-landing .promo-card__badge--red    { background: linear-gradient(135deg, #ef4444, #dc2626); }
.cb-landing .promo-card__badge--yellow { background: linear-gradient(135deg, #f59e0b, #d97706); color: #111; }
.cb-landing .promo-card__badge--gray   { background: linear-gradient(135deg, #64748b, #475569); }

.cb-landing .promo-card__body { padding: 20px 22px 22px; display: flex; flex-direction: column; gap: 10px; flex: 1; }
.cb-landing .promo-card__title {
    font-size: 1.02rem; font-weight: 800; line-height: 1.35;
    margin: 0; color: #0f172a; min-height: 2.6em;
}
.cb-landing .promo-card__lessons { font-size: .85rem; color: #64748b; font-weight: 600; }
.cb-landing .promo-card__prices {
    display: flex; align-items: baseline; gap: 10px;
    margin-top: 6px; flex-wrap: wrap;
}
.cb-landing .promo-card__reg {
    color: #dc2626 !important; font-size: 1.05rem; font-weight: 700;
    text-decoration: line-through; text-decoration-color: #dc2626;
}
.cb-landing .promo-card__sale {
    color: #16a34a !important; font-size: 1.7rem; font-weight: 900;
    letter-spacing: -.02em; line-height: 1;
}
.cb-landing .promo-card__savings {
    color: #16a34a; font-size: .82rem; font-weight: 700;
    background: rgba(22,163,74,.1); padding: 4px 10px;
    border-radius: 999px; align-self: flex-start;
}
.cb-landing a.promo-card__btn, .cb-landing .promo-card__btn {
    display: block; margin-top: auto; padding: 14px 20px;
    background: #16a34a !important; color: #fff !important;
    font-weight: 800; font-size: .95rem;
    text-align: center; text-decoration: none !important;
    border-radius: 999px; letter-spacing: .03em;
    box-shadow: 0 6px 16px rgba(22,163,74,.3);
    transition: transform .2s, box-shadow .2s, background .2s;
}
.cb-landing a.promo-card__btn:hover, .cb-landing .promo-card__btn:hover {
    background: #15803d !important; color: #fff !important;
    transform: translateY(-2px);
    box-shadow: 0 10px 24px rgba(22,163,74,.4);
}

@media (max-width: 640px) {
    .cb-landing .promo-cat__grid { grid-template-columns: 1fr; }
    .cb-landing .promo-card__title { min-height: 0; }
}
/* === END PROMO COURSES === */




/* === PAGE 24055 HERO SIMPLIFY === */
/* Hero + final-cta: tylko tytuł + countdown. Bez cen/miejsc/gwarancji/buttonów */
body.page-id-24055 .cb-landing .hero .price-row,
body.page-id-24055 .cb-landing .hero .savings-badge,
body.page-id-24055 .cb-landing .hero .seats-remaining,
body.page-id-24055 .cb-landing .hero .money-back-badge,
body.page-id-24055 .cb-landing .hero .sales-block .cta-btn,
body.page-id-24055 .cb-landing .hero .closed-block .cta-btn,
body.page-id-24055 .cb-landing .final-cta .price-row,
body.page-id-24055 .cb-landing .final-cta .savings-badge,
body.page-id-24055 .cb-landing .final-cta .seats-remaining,
body.page-id-24055 .cb-landing .final-cta .money-back-badge,
body.page-id-24055 .cb-landing .final-cta .sales-block .cta-btn,
body.page-id-24055 .cb-landing .final-cta .closed-block .cta-btn {
    display: none !important;
}
/* === END 24055 === */




/* === PAGE-WAKACYJNA HERO SIMPLIFY === */
body.page-id-24125 .hero .price-row,
body.page-id-24125 .hero .savings-badge,
body.page-id-24125 .hero .seats-remaining,
body.page-id-24125 .hero .money-back-badge,
body.page-id-24125 .hero .sales-block .cta-btn,
body.page-id-24125 .hero .closed-block .cta-btn,
body.page-id-24125 .final-cta .price-row,
body.page-id-24125 .final-cta .savings-badge,
body.page-id-24125 .final-cta .seats-remaining,
body.page-id-24125 .final-cta .money-back-badge,
body.page-id-24125 .final-cta .sales-block .cta-btn,
body.page-id-24125 .final-cta .closed-block .cta-btn {
    display: none !important;
}
/* === END WAKACYJNA === */

/* ============================================================
   Sekcja "Eksperci i partnerzy" (cb-experts) - dodane 2026-09-07
   Wszystko zawezone do .cb-experts-section, zeby nie ruszyc
   pozostalych sekcji frameworka.
   ============================================================ */
.cb-landing .cb-experts-section .cb-experts-subtitle {
	max-width: 760px;
	margin: 0 auto 40px;
	text-align: center;
	font-size: 1.05rem;
	line-height: 1.6;
	opacity: .85;
}
.cb-landing .cb-experts-section .cb-experts-empty {
	text-align: center;
	padding: 24px;
	border: 1px dashed rgba(127, 127, 127, .5);
	border-radius: 10px;
	opacity: .8;
}
.cb-landing .cb-experts-grid {
	display: grid;
	grid-template-columns: repeat(auto-fit, minmax(260px, 1fr));
	gap: 28px;
	align-items: stretch;
}
.cb-landing .cb-expert-card {
	display: flex;
	flex-direction: column;
	align-items: center;
	text-align: center;
	padding: 32px 24px;
	border-radius: 16px;
	background: rgba(255, 255, 255, .04);
	border: 1px solid rgba(255, 255, 255, .10);
	transition: transform .2s ease, border-color .2s ease;
}
.cb-landing .cb-experts-section.section-light .cb-expert-card {
	background: #ffffff;
	border-color: rgba(15, 23, 42, .10);
	box-shadow: 0 2px 10px rgba(15, 23, 42, .06);
}
.cb-landing .cb-expert-card:hover {
	transform: translateY(-4px);
	border-color: rgba(0, 232, 143, .45);
}
.cb-landing .cb-expert-photo {
	width: 132px;
	height: 132px;
	margin-bottom: 20px;
	border-radius: 50%;
	overflow: hidden;
	flex: 0 0 auto;
	display: flex;
	align-items: center;
	justify-content: center;
	background: linear-gradient(135deg, #1e3a5f, #0f172a);
}
.cb-landing .cb-experts-section.section-light .cb-expert-photo {
	background: linear-gradient(135deg, #e2e8f0, #cbd5e1);
}
.cb-landing .cb-expert-photo img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	display: block;
}
.cb-landing .cb-expert-initials {
	font-size: 2.6rem;
	font-weight: 800;
	letter-spacing: 1px;
	color: rgba(255, 255, 255, .85);
	line-height: 1;
}
.cb-landing .cb-experts-section.section-light .cb-expert-initials {
	color: rgba(15, 23, 42, .55);
}
.cb-landing .cb-expert-name {
	margin: 0 0 6px;
	font-size: 1.18rem;
	font-weight: 700;
	line-height: 1.3;
}
.cb-landing .cb-expert-role {
	margin: 0 0 14px;
	font-size: .93rem;
	font-weight: 600;
	color: #00b374;
}
.cb-landing .cb-experts-section.section-dark .cb-expert-role {
	color: #00e88f;
}
.cb-landing .cb-expert-bio {
	margin: 0;
	font-size: .95rem;
	line-height: 1.6;
	opacity: .85;
}
.cb-landing .cb-expert-link {
	margin-top: 16px;
	font-size: .9rem;
	font-weight: 600;
	text-decoration: underline;
}
@media (max-width: 640px) {
	.cb-landing .cb-experts-grid { grid-template-columns: 1fr; gap: 20px; }
	.cb-landing .cb-expert-photo { width: 110px; height: 110px; }
	.cb-landing .cb-expert-initials { font-size: 2.1rem; }
}

/* ============================================================
   Tryb "firmy" - logotypy PNG z przezroczystoscia.
   Kafelek jest JEDYNYM prostokatem. Zadnego tla ani ramki pod
   samym logotypem - inaczej wychodza trzy pudelka jedno w drugim.
   ============================================================ */
.cb-landing .cb-experts--firmy .cb-expert-card {
	padding: 26px 20px;
	justify-content: center;
	gap: 14px;
}
/* Selektor musi zawierac .section-light, zeby przebic jasny wariant
   ustawiajacy szary gradient pod zdjeciem osoby. */
.cb-landing .cb-experts-section.cb-experts--firmy .cb-expert-photo,
.cb-landing .cb-experts-section.section-light.cb-experts--firmy .cb-expert-photo,
.cb-landing .cb-experts-section.section-dark.cb-experts--firmy .cb-expert-photo {
	width: 100%;
	max-width: 200px;
	height: 62px;
	margin: 0 0 4px;
	padding: 0;
	border: 0;
	border-radius: 0;
	background: none;
	box-shadow: none;
	overflow: visible;
	display: flex;
	align-items: center;
	justify-content: center;
}
.cb-landing .cb-experts--firmy .cb-expert-photo img {
	width: auto;
	max-width: 100%;
	height: 100%;
	object-fit: contain;   /* logotypu nie kadrujemy */
}
.cb-landing .cb-experts--firmy .cb-expert-photo--link {
	transition: opacity .18s ease, transform .18s ease;
}
.cb-landing .cb-experts--firmy .cb-expert-photo--link:hover {
	opacity: .75;
	transform: translateY(-2px);
}
.cb-landing .cb-experts--firmy .cb-expert-name {
	font-size: 1rem;
	margin: 0;
}
.cb-landing .cb-experts--firmy .cb-expert-role {
	font-size: .84rem;
	text-transform: uppercase;
	letter-spacing: .04em;
	margin: 0;
}

/* ═══════════════════════════════════════════════════
   Oferty pracy (sekcja job_listings) - wszystko pod .cb-jobs
   ═══════════════════════════════════════════════════ */
.cb-landing .cb-jobs {
    --cbj-surface: #fff; --cbj-ink: #0d1b2a; --cbj-muted: #5d6f82; --cbj-line: #e2e9f0;
    --cbj-accent: #2ac4ea; --cbj-accent-ink: #062634; --cbj-accent-text: #1077a0; --cbj-chip: #eef6fa;
    padding: 72px 20px 80px; background: linear-gradient(180deg, #fbfdfe 0%, #f2f7fa 100%);
}
.cb-landing .cb-jobs.section-dark {
    --cbj-surface: rgba(255,255,255,.045); --cbj-ink: #fff; --cbj-muted: #9fb2c4; --cbj-line: rgba(255,255,255,.12);
    --cbj-accent-text: #2ac4ea; --cbj-chip: rgba(42,196,234,.1);
    background: linear-gradient(135deg, #0d2430 0%, #1a1a2e 50%, #0d0d1a 100%);
}
.cb-landing .cb-jobs .container { max-width: 900px; }
.cb-landing .cb-jobs .cb-jobs-eyebrow { display: inline-block; margin: 0 0 14px; font-size: .78rem; font-weight: 800; letter-spacing: .1em; text-transform: uppercase; color: var(--cbj-accent-text) !important; }
.cb-landing .cb-jobs .cb-jobs-title { font-size: clamp(1.9rem, 4.4vw, 3rem) !important; font-weight: 900 !important; color: var(--cbj-ink) !important; margin: 0 0 12px !important; text-wrap: balance; }
.cb-landing .cb-jobs .cb-jobs-intro { font-size: 1.1rem !important; font-weight: 500 !important; color: var(--cbj-muted) !important; max-width: 62ch; margin: 0 0 34px !important; }
.cb-landing .cb-jobs .cb-jobs-h3 { font-size: 1.05rem !important; font-weight: 800 !important; color: var(--cbj-muted) !important; margin: 34px 0 12px !important; letter-spacing: .04em; text-transform: uppercase; }

.cb-landing .cb-jobs .cb-jobs-lista { display: flex; flex-direction: column; gap: 14px; }
.cb-landing .cb-jobs .cb-jobs-card { background: var(--cbj-surface); border: 1px solid var(--cbj-line); border-radius: 16px; overflow: hidden; }
.cb-landing .cb-jobs .cb-jobs-card[open] { border-color: var(--cbj-accent); box-shadow: 0 14px 36px rgba(42,196,234,.14); }
.cb-landing .cb-jobs .cb-jobs-card--wygasla { opacity: .7; }
.cb-landing .cb-jobs .cb-jobs-sum { list-style: none; cursor: pointer; display: flex; justify-content: space-between; align-items: center; gap: 16px; padding: 20px 22px; }
.cb-landing .cb-jobs .cb-jobs-sum::-webkit-details-marker { display: none; }
.cb-landing .cb-jobs .cb-jobs-sum:focus-visible { outline: 3px solid var(--cbj-accent); outline-offset: -3px; }
.cb-landing .cb-jobs .cb-jobs-sum-txt { display: flex; flex-direction: column; gap: 8px; min-width: 0; }
.cb-landing .cb-jobs .cb-jobs-name { font-size: 1.2rem; font-weight: 800; color: var(--cbj-ink) !important; line-height: 1.3; }
.cb-landing .cb-jobs .cb-jobs-chips { display: flex; flex-wrap: wrap; gap: 6px; }
.cb-landing .cb-jobs .cb-jobs-chip { display: inline-block; padding: 3px 10px; border-radius: var(--radius-pill); background: var(--cbj-chip); border: 1px solid var(--cbj-line); font-size: .8rem; font-weight: 700; color: var(--cbj-accent-text) !important; }
.cb-landing .cb-jobs .cb-jobs-sum-r { display: flex; align-items: center; gap: 10px; flex: 0 0 auto; }
.cb-landing .cb-jobs .cb-jobs-do { font-size: .82rem; font-weight: 600; color: var(--cbj-muted) !important; white-space: nowrap; }
.cb-landing .cb-jobs .cb-jobs-arr { width: 22px; height: 22px; fill: none; stroke: var(--cbj-muted); stroke-width: 2.2; stroke-linecap: round; stroke-linejoin: round; transition: transform .2s ease; }
.cb-landing .cb-jobs .cb-jobs-card[open] .cb-jobs-arr { transform: rotate(180deg); }
.cb-landing .cb-jobs .cb-jobs-body { padding: 0 22px 24px; border-top: 1px solid var(--cbj-line); }
.cb-landing .cb-jobs .cb-jobs-opis { padding-top: 18px; }
.cb-landing .cb-jobs .cb-jobs-opis p { font-size: 1rem !important; color: var(--cbj-ink) !important; margin: 0 0 10px !important; }
.cb-landing .cb-jobs .cb-jobs-cols { display: grid; grid-template-columns: repeat(auto-fit, minmax(220px, 1fr)); gap: 20px 28px; padding-top: 16px; }
.cb-landing .cb-jobs .cb-jobs-col h4 { font-size: .82rem !important; font-weight: 800 !important; letter-spacing: .06em; text-transform: uppercase; color: var(--cbj-accent-text) !important; margin: 0 0 8px !important; }
.cb-landing .cb-jobs .cb-jobs-col ul { list-style: none !important; margin: 0 !important; padding: 0 !important; display: flex; flex-direction: column; gap: 6px; }
.cb-landing .cb-jobs .cb-jobs-col li { position: relative; padding-left: 18px; font-size: .97rem !important; line-height: 1.45 !important; color: var(--cbj-ink) !important; margin: 0 !important; }
.cb-landing .cb-jobs .cb-jobs-col li::before { content: ""; position: absolute; left: 0; top: .55em; width: 8px; height: 8px; border-radius: 50%; background: var(--cbj-accent); }

.cb-landing .cb-jobs .cb-jobs-btn { display: inline-flex; align-items: center; gap: 10px; margin-top: 22px; padding: 14px 24px; border-radius: 12px; background: var(--cbj-accent); color: var(--cbj-accent-ink) !important; font-size: 1rem; font-weight: 800; text-decoration: none !important; box-shadow: 0 10px 26px rgba(42,196,234,.3); transition: transform .18s ease; }
.cb-landing .cb-jobs .cb-jobs-btn svg { width: 18px; height: 18px; fill: none; stroke: currentColor; stroke-width: 2.2; stroke-linecap: round; stroke-linejoin: round; }
.cb-landing .cb-jobs .cb-jobs-btn:hover { transform: translateY(-2px); }
.cb-landing .cb-jobs .cb-jobs-btn:focus-visible { outline: 3px solid var(--cbj-accent-text); outline-offset: 3px; }
.cb-landing .cb-jobs .cb-jobs-btn--ghost { background: transparent; color: var(--cbj-accent-text) !important; border: 2px solid var(--cbj-accent); box-shadow: none; margin-top: 0; }

.cb-landing .cb-jobs .cb-jobs-pusto, .cb-landing .cb-jobs .cb-jobs-spont { display: flex; flex-direction: column; gap: 6px; padding: 26px 24px; border-radius: 16px; background: var(--cbj-surface); border: 1px dashed var(--cbj-line); }
.cb-landing .cb-jobs .cb-jobs-pusto strong, .cb-landing .cb-jobs .cb-jobs-spont strong { font-size: 1.15rem; font-weight: 800; color: var(--cbj-ink) !important; }
.cb-landing .cb-jobs .cb-jobs-pusto span, .cb-landing .cb-jobs .cb-jobs-spont span { font-size: 1rem; color: var(--cbj-muted) !important; }
.cb-landing .cb-jobs .cb-jobs-spont { margin-top: 30px; flex-direction: row; align-items: center; justify-content: space-between; gap: 20px; border-style: solid; }
.cb-landing .cb-jobs .cb-jobs-spont > div { display: flex; flex-direction: column; gap: 4px; }

@media (max-width: 720px) {
    .cb-landing .cb-jobs { padding: 56px 16px 60px; }
    .cb-landing .cb-jobs .cb-jobs-sum { padding: 16px 16px; }
    .cb-landing .cb-jobs .cb-jobs-body { padding: 0 16px 20px; }
    .cb-landing .cb-jobs .cb-jobs-spont { flex-direction: column; align-items: flex-start; }
    .cb-landing .cb-jobs .cb-jobs-do { display: none; }
}
@media (prefers-reduced-motion: reduce) { .cb-landing .cb-jobs .cb-jobs-btn, .cb-landing .cb-jobs .cb-jobs-arr { transition: none; } .cb-landing .cb-jobs .cb-jobs-btn:hover { transform: none; } }

/* ═══════════════════════════════════════════════════
   Sekcje firmowe: page_header (.cb-ph), cards_grid (.cb-cards), contact_cta (.cb-contact)
   Wspolne tokeny - jasny wariant domyslny, ciemny przez .section-dark
   ═══════════════════════════════════════════════════ */
.cb-landing .cb-ph, .cb-landing .cb-cards, .cb-landing .cb-contact {
    --cbf-surface: #fff; --cbf-ink: #0d1b2a; --cbf-muted: #5d6f82; --cbf-line: #e2e9f0;
    --cbf-accent: #2ac4ea; --cbf-accent-ink: #062634; --cbf-accent-text: #1077a0; --cbf-chip: #eef6fa;
    --cbf-glow: rgba(42,196,234,.18);
}
.cb-landing .cb-ph.section-dark, .cb-landing .cb-cards.section-dark, .cb-landing .cb-contact.section-dark {
    --cbf-surface: rgba(255,255,255,.05); --cbf-ink: #fff; --cbf-muted: #9fb2c4; --cbf-line: rgba(255,255,255,.13);
    --cbf-accent-text: #2ac4ea; --cbf-chip: rgba(42,196,234,.12); --cbf-glow: rgba(42,196,234,.28);
    background: linear-gradient(135deg, #0d2430 0%, #1a1a2e 50%, #0d0d1a 100%);
}
.cb-landing .cb-ph.section-light { background: linear-gradient(180deg, #fbfdfe 0%, #f2f7fa 100%); }
.cb-landing .cb-cards.section-light:nth-of-type(even) { background: #f6f9fb; }

/* ── page_header ── */
.cb-landing .cb-ph { padding: 64px 20px 56px; }
.cb-landing .cb-ph .container { max-width: 1120px; }
.cb-landing .cb-ph .cb-ph-grid { display: grid; gap: 40px; align-items: center; }
.cb-landing .cb-ph--img .cb-ph-grid { grid-template-columns: minmax(0, 1.15fr) minmax(0, 1fr); }
.cb-landing .cb-ph--center .cb-ph-txt { text-align: center; margin: 0 auto; max-width: 780px; }
.cb-landing .cb-ph--center .cb-ph-btns, .cb-landing .cb-ph--center .cb-ph-chips { justify-content: center; }
.cb-landing .cb-ph .cb-ph-logo { height: 44px; width: auto; margin: 0 0 22px; display: block; }
.cb-landing .cb-ph--center .cb-ph-logo { margin-inline: auto; }
.cb-landing .cb-ph .cb-ph-eyebrow { display: inline-block; margin: 0 0 14px; padding: 7px 14px; border-radius: var(--radius-pill); background: var(--cbf-chip); border: 1px solid var(--cbf-line); font-size: .76rem; font-weight: 800; letter-spacing: .09em; text-transform: uppercase; color: var(--cbf-accent-text) !important; }
.cb-landing .cb-ph .cb-ph-title { font-size: clamp(2rem, 4.6vw, 3.2rem) !important; font-weight: 900 !important; line-height: 1.12 !important; color: var(--cbf-ink) !important; margin: 0 0 16px !important; text-wrap: balance; }
.cb-landing .cb-ph .cb-ph-lead p { font-size: 1.15rem !important; font-weight: 500 !important; line-height: 1.6 !important; color: var(--cbf-muted) !important; margin: 0 0 10px !important; max-width: 62ch; }
.cb-landing .cb-ph--center .cb-ph-lead p { margin-inline: auto !important; }
.cb-landing .cb-ph .cb-ph-btns { display: flex; flex-wrap: wrap; gap: 12px; margin: 26px 0 0; }
.cb-landing .cb-ph .cb-ph-btn { display: inline-flex; align-items: center; gap: 10px; padding: 15px 24px; border-radius: 12px; font-size: 1.02rem; font-weight: 800; text-decoration: none !important; transition: transform .18s ease; }
.cb-landing .cb-ph .cb-ph-btn svg { width: 18px; height: 18px; fill: none; stroke: currentColor; stroke-width: 2.2; stroke-linecap: round; stroke-linejoin: round; }
.cb-landing .cb-ph .cb-ph-btn--solid { background: var(--cbf-accent); color: var(--cbf-accent-ink) !important; box-shadow: 0 10px 26px var(--cbf-glow); }
.cb-landing .cb-ph .cb-ph-btn--ghost { background: transparent; color: var(--cbf-accent-text) !important; border: 2px solid var(--cbf-accent); }
.cb-landing .cb-ph .cb-ph-btn:hover { transform: translateY(-2px); }
.cb-landing .cb-ph .cb-ph-btn:focus-visible { outline: 3px solid var(--cbf-accent-text); outline-offset: 3px; }
.cb-landing .cb-ph .cb-ph-chips { display: flex; flex-wrap: wrap; gap: 8px; margin: 22px 0 0; }
.cb-landing .cb-ph .cb-ph-chips span { padding: 6px 12px; border-radius: var(--radius-pill); background: var(--cbf-surface); border: 1px solid var(--cbf-line); font-size: .84rem; font-weight: 700; color: var(--cbf-ink) !important; }
.cb-landing .cb-ph .cb-ph-media img { width: 100%; height: auto; border-radius: 18px; box-shadow: 0 20px 50px rgba(13,27,42,.14); display: block; }

/* ── cards_grid ── */
.cb-landing .cb-cards { padding: 72px 20px; }
.cb-landing .cb-cards .container { max-width: 1120px; text-align: center; }
.cb-landing .cb-cards .cb-cards-eyebrow { display: inline-block; margin: 0 0 12px; font-size: .76rem; font-weight: 800; letter-spacing: .1em; text-transform: uppercase; color: var(--cbf-accent-text) !important; }
.cb-landing .cb-cards .cb-cards-title { font-size: clamp(1.7rem, 3.8vw, 2.5rem) !important; font-weight: 900 !important; color: var(--cbf-ink) !important; margin: 0 0 12px !important; text-wrap: balance; }
.cb-landing .cb-cards .cb-cards-intro { font-size: 1.08rem !important; font-weight: 500 !important; color: var(--cbf-muted) !important; max-width: 68ch; margin: 0 auto 36px !important; }
.cb-landing .cb-cards .cb-cards-grid { display: grid; gap: 20px; text-align: left; grid-template-columns: repeat(auto-fit, minmax(260px, 1fr)); }
.cb-landing .cb-cards--cols-2 .cb-cards-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
.cb-landing .cb-cards--cols-3 .cb-cards-grid { grid-template-columns: repeat(3, minmax(0, 1fr)); }
.cb-landing .cb-cards--cols-4 .cb-cards-grid { grid-template-columns: repeat(4, minmax(0, 1fr)); }
.cb-landing .cb-cards .cb-cards-card { position: relative; display: flex; flex-direction: column; gap: 10px; padding: 28px 26px; border-radius: 18px; background: var(--cbf-surface); border: 1px solid var(--cbf-line); }
.cb-landing .cb-cards--plain .cb-cards-card { background: transparent; border: 0; padding: 12px 6px; }
.cb-landing .cb-cards .cb-cards-card--hi { border: 2px solid var(--cbf-accent); box-shadow: 0 16px 40px var(--cbf-glow); }
.cb-landing .cb-cards .cb-cards-badge { position: absolute; top: -13px; left: 22px; padding: 5px 12px; border-radius: var(--radius-pill); background: var(--cbf-accent); color: var(--cbf-accent-ink) !important; font-size: .72rem; font-weight: 900; letter-spacing: .06em; text-transform: uppercase; }
.cb-landing .cb-cards .cb-cards-icon { font-size: 1.9rem; line-height: 1; }
.cb-landing .cb-cards .cb-cards-num { width: 40px; height: 40px; border-radius: 50%; display: inline-flex; align-items: center; justify-content: center; background: var(--cbf-accent); color: var(--cbf-accent-ink) !important; font-weight: 900; font-size: 1.05rem; }
.cb-landing .cb-cards .cb-cards-h { font-size: 1.18rem !important; font-weight: 800 !important; line-height: 1.3 !important; color: var(--cbf-ink) !important; margin: 4px 0 0 !important; }
.cb-landing .cb-cards .cb-cards-price { display: flex; flex-direction: column; margin: 4px 0; }
.cb-landing .cb-cards .cb-cards-price strong { font-size: 1.9rem; font-weight: 900; color: var(--cbf-accent-text) !important; line-height: 1.1; }
.cb-landing .cb-cards .cb-cards-price small { font-size: .84rem; color: var(--cbf-muted) !important; }
.cb-landing .cb-cards .cb-cards-p { font-size: .98rem !important; font-weight: 500 !important; line-height: 1.55 !important; color: var(--cbf-muted) !important; margin: 0 !important; }
.cb-landing .cb-cards .cb-cards-list { list-style: none !important; margin: 4px 0 0 !important; padding: 0 !important; display: flex; flex-direction: column; gap: 7px; }
.cb-landing .cb-cards .cb-cards-list li { position: relative; padding-left: 20px; font-size: .96rem !important; line-height: 1.45 !important; color: var(--cbf-ink) !important; margin: 0 !important; }
.cb-landing .cb-cards .cb-cards-list li::before { content: ""; position: absolute; left: 0; top: .5em; width: 9px; height: 9px; border-radius: 50%; background: var(--cbf-accent); }
.cb-landing .cb-cards--compare .cb-cards-list li::before { border-radius: 2px; }
.cb-landing .cb-cards .cb-cards-btn { display: inline-flex; align-items: center; justify-content: center; margin-top: auto; padding: 12px 20px; border-radius: 12px; border: 2px solid var(--cbf-accent); color: var(--cbf-accent-text) !important; font-weight: 800; font-size: .96rem; text-decoration: none !important; align-self: flex-start; }
.cb-landing .cb-cards .cb-cards-btn--solid { background: var(--cbf-accent); color: var(--cbf-accent-ink) !important; padding: 15px 28px; font-size: 1.02rem; box-shadow: 0 10px 26px var(--cbf-glow); }
.cb-landing .cb-cards .cb-cards-note { font-size: .92rem !important; color: var(--cbf-muted) !important; margin: 26px auto 0 !important; max-width: 70ch; }
.cb-landing .cb-cards .cb-cards-cta { margin-top: 32px; }

/* ── contact_cta ── */
.cb-landing .cb-contact { padding: 72px 20px 80px; }
.cb-landing .cb-contact.section-light { background: linear-gradient(180deg, #f2f7fa 0%, #fbfdfe 100%); }
.cb-landing .cb-contact .container { max-width: 1080px; }
.cb-landing .cb-contact .cb-contact-grid { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1.1fr); gap: 44px; align-items: start; }
.cb-landing .cb-contact .cb-contact-grid--single { grid-template-columns: minmax(0, 720px); justify-content: center; }
.cb-landing .cb-contact .cb-contact-eyebrow { display: inline-block; margin: 0 0 12px; font-size: .76rem; font-weight: 800; letter-spacing: .1em; text-transform: uppercase; color: var(--cbf-accent-text) !important; }
.cb-landing .cb-contact .cb-contact-title { font-size: clamp(1.7rem, 3.8vw, 2.5rem) !important; font-weight: 900 !important; color: var(--cbf-ink) !important; margin: 0 0 12px !important; text-wrap: balance; }
.cb-landing .cb-contact .cb-contact-text p { font-size: 1.05rem !important; font-weight: 500 !important; color: var(--cbf-muted) !important; margin: 0 0 10px !important; }
.cb-landing .cb-contact .cb-contact-ways { display: flex; flex-direction: column; gap: 12px; margin: 24px 0; }
.cb-landing .cb-contact .cb-contact-way { display: flex; align-items: center; gap: 14px; padding: 14px 16px; border-radius: 14px; background: var(--cbf-surface); border: 1px solid var(--cbf-line); text-decoration: none !important; }
.cb-landing .cb-contact .cb-contact-way svg { width: 24px; height: 24px; flex: 0 0 24px; fill: none; stroke: var(--cbf-accent-text); stroke-width: 1.9; stroke-linecap: round; stroke-linejoin: round; }
.cb-landing .cb-contact .cb-contact-way span { display: flex; flex-direction: column; line-height: 1.3; }
.cb-landing .cb-contact .cb-contact-way strong { font-size: 1.05rem; font-weight: 800; color: var(--cbf-ink) !important; }
.cb-landing .cb-contact .cb-contact-way em, .cb-landing .cb-contact .cb-contact-person em { font-style: normal; font-size: .86rem; color: var(--cbf-muted) !important; }
.cb-landing .cb-contact .cb-contact-person { display: flex; align-items: center; gap: 14px; margin: 6px 0 22px; }
.cb-landing .cb-contact .cb-contact-person img { width: 64px; height: 64px; border-radius: 50%; object-fit: cover; border: 3px solid var(--cbf-surface); box-shadow: 0 6px 18px rgba(13,27,42,.15); }
.cb-landing .cb-contact .cb-contact-person span { display: flex; flex-direction: column; }
.cb-landing .cb-contact .cb-contact-person strong { font-weight: 800; color: var(--cbf-ink) !important; }
.cb-landing .cb-contact .cb-contact-btn { display: inline-flex; align-items: center; justify-content: center; padding: 15px 26px; border-radius: 12px; background: var(--cbf-accent); color: var(--cbf-accent-ink) !important; font-weight: 800; font-size: 1.02rem; text-decoration: none !important; border: 0; cursor: pointer; box-shadow: 0 10px 26px var(--cbf-glow); font-family: var(--font-main); }
.cb-landing .cb-contact .cb-contact-btn:disabled { opacity: .6; cursor: wait; }
.cb-landing .cb-contact .cb-contact-form { display: flex; flex-direction: column; gap: 14px; padding: 28px 26px; border-radius: 18px; background: var(--cbf-surface); border: 1px solid var(--cbf-line); box-shadow: 0 16px 40px rgba(13,27,42,.08); }
.cb-landing .cb-contact .cb-contact-form h3 { font-size: 1.25rem !important; font-weight: 800 !important; color: var(--cbf-ink) !important; margin: 0 !important; }
.cb-landing .cb-contact .cb-contact-form-intro { font-size: .95rem !important; color: var(--cbf-muted) !important; margin: -6px 0 4px !important; }
.cb-landing .cb-contact .cb-contact-field { display: flex; flex-direction: column; gap: 6px; }
.cb-landing .cb-contact .cb-contact-field > span { font-size: .86rem; font-weight: 700; color: var(--cbf-ink) !important; }
.cb-landing .cb-contact .cb-contact-field b { color: var(--color-accent) !important; }
.cb-landing .cb-contact .cb-contact-field input, .cb-landing .cb-contact .cb-contact-field select, .cb-landing .cb-contact .cb-contact-field textarea { width: 100%; padding: 12px 14px; border-radius: 10px; border: 1px solid var(--cbf-line-strong, #c9d4e0); background: #fff; color: #0d1b2a; font: inherit; font-size: 1rem; }
.cb-landing .cb-contact .cb-contact-field input:focus-visible, .cb-landing .cb-contact .cb-contact-field select:focus-visible, .cb-landing .cb-contact .cb-contact-field textarea:focus-visible { outline: 3px solid var(--cbf-accent); outline-offset: 1px; border-color: var(--cbf-accent); }
.cb-landing .cb-contact .cb-contact-hp { position: absolute; left: -9999px; width: 1px; height: 1px; overflow: hidden; }
.cb-landing .cb-contact .cb-contact-btn--submit { margin-top: 6px; }
.cb-landing .cb-contact .cb-contact-msg { min-height: 1.4em; font-size: .95rem !important; font-weight: 600 !important; margin: 0 !important; color: var(--cbf-muted) !important; }
.cb-landing .cb-contact .cb-contact-msg--ok { color: #0a7c47 !important; }
.cb-landing .cb-contact .cb-contact-msg--err { color: #b3261e !important; }
.cb-landing .cb-contact .cb-contact-note { font-size: .82rem !important; color: var(--cbf-muted) !important; margin: 0 !important; }

@media (max-width: 860px) {
    .cb-landing .cb-ph, .cb-landing .cb-cards, .cb-landing .cb-contact { padding-left: 16px; padding-right: 16px; }
    .cb-landing .cb-ph--img .cb-ph-grid, .cb-landing .cb-contact .cb-contact-grid,
    .cb-landing .cb-cards--cols-2 .cb-cards-grid, .cb-landing .cb-cards--cols-3 .cb-cards-grid, .cb-landing .cb-cards--cols-4 .cb-cards-grid { grid-template-columns: minmax(0, 1fr); }
    .cb-landing .cb-ph--img .cb-ph-media { order: -1; }
}
@media (prefers-reduced-motion: reduce) { .cb-landing .cb-ph .cb-ph-btn { transition: none; } .cb-landing .cb-ph .cb-ph-btn:hover { transform: none; } }

/* Link "Zobacz kurs" w katalogu kursow mial kontrast 2,06 na bialym - ciemniejszy odcien tej samej barwy (AA) */
.cb-landing .bootcamp-courses-section .bootcamp-course-link { color: #0f6fb8 !important; font-weight: 700; }
.cb-landing .bootcamp-courses-section .bootcamp-course-link:hover { color: #0b558d !important; }

/* ═══════════════════════════════════════════════════
   Strona glowna: latest_posts (.cb-blog), youtube_feed (.cb-yt)
   ═══════════════════════════════════════════════════ */
.cb-landing .cb-blog, .cb-landing .cb-yt {
    --cbf-surface: #fff; --cbf-ink: #0d1b2a; --cbf-muted: #5d6f82; --cbf-line: #e2e9f0;
    --cbf-accent: #2ac4ea; --cbf-accent-ink: #062634; --cbf-accent-text: #1077a0; --cbf-chip: #eef6fa; --cbf-glow: rgba(42,196,234,.18);
    padding: 72px 20px;
}
.cb-landing .cb-blog.section-dark, .cb-landing .cb-yt.section-dark { --cbf-surface: rgba(255,255,255,.05); --cbf-ink: #fff; --cbf-muted: #9fb2c4; --cbf-line: rgba(255,255,255,.13); --cbf-accent-text: #2ac4ea; --cbf-chip: rgba(42,196,234,.12); background: linear-gradient(135deg, #0d2430 0%, #1a1a2e 50%, #0d0d1a 100%); }
.cb-landing .cb-blog.section-light { background: #f6f9fb; }
.cb-landing .cb-blog .container, .cb-landing .cb-yt .container { max-width: 1120px; }
.cb-landing .cb-blog .cb-blog-eyebrow, .cb-landing .cb-yt .cb-yt-eyebrow { display: inline-block; margin: 0 0 12px; font-size: .76rem; font-weight: 800; letter-spacing: .1em; text-transform: uppercase; color: var(--cbf-accent-text) !important; }
.cb-landing .cb-blog .cb-blog-title, .cb-landing .cb-yt .cb-yt-title { font-size: clamp(1.7rem, 3.8vw, 2.5rem) !important; font-weight: 900 !important; color: var(--cbf-ink) !important; margin: 0 0 12px !important; text-wrap: balance; }
.cb-landing .cb-blog .cb-blog-intro, .cb-landing .cb-yt .cb-yt-intro { font-size: 1.08rem !important; font-weight: 500 !important; color: var(--cbf-muted) !important; max-width: 64ch; margin: 0 0 32px !important; }
.cb-landing .cb-blog .container { text-align: center; }
.cb-landing .cb-blog .cb-blog-intro { margin-inline: auto !important; }
.cb-landing .cb-blog .cb-blog-grid { display: grid; grid-template-columns: repeat(auto-fit, minmax(280px, 1fr)); gap: 22px; text-align: left; }
.cb-landing .cb-blog .cb-blog-card { display: flex; flex-direction: column; background: var(--cbf-surface); border: 1px solid var(--cbf-line); border-radius: 18px; overflow: hidden; transition: transform .18s ease, box-shadow .18s ease; }
.cb-landing .cb-blog .cb-blog-card:hover { transform: translateY(-3px); box-shadow: 0 16px 40px rgba(13,27,42,.1); }
.cb-landing .cb-blog .cb-blog-media { display: block; aspect-ratio: 16 / 9; background: var(--cbf-chip); overflow: hidden; }
.cb-landing .cb-blog .cb-blog-media img { width: 100%; height: 100%; object-fit: cover; display: block; }
.cb-landing .cb-blog .cb-blog-body { display: flex; flex-direction: column; gap: 10px; padding: 20px 22px 22px; flex: 1; }
.cb-landing .cb-blog .cb-blog-meta { display: flex; gap: 12px; align-items: center; font-size: .8rem; font-weight: 700; color: var(--cbf-muted) !important; }
.cb-landing .cb-blog .cb-blog-cat { padding: 3px 10px; border-radius: var(--radius-pill); background: var(--cbf-chip); color: var(--cbf-accent-text) !important; text-decoration: none !important; }
.cb-landing .cb-blog .cb-blog-h { font-size: 1.12rem !important; font-weight: 800 !important; line-height: 1.32 !important; margin: 0 !important; }
.cb-landing .cb-blog .cb-blog-h a { color: var(--cbf-ink) !important; text-decoration: none !important; }
.cb-landing .cb-blog .cb-blog-p { font-size: .95rem !important; font-weight: 500 !important; line-height: 1.5 !important; color: var(--cbf-muted) !important; margin: 0 !important; }
.cb-landing .cb-blog .cb-blog-more { margin-top: auto; padding-top: 6px; font-weight: 800; font-size: .92rem; color: var(--cbf-accent-text) !important; text-decoration: none !important; }
.cb-landing .cb-blog .cb-blog-cta { margin-top: 30px; }
.cb-landing .cb-blog .cb-blog-btn, .cb-landing .cb-yt .cb-yt-btn { display: inline-flex; align-items: center; gap: 10px; padding: 14px 26px; border-radius: 12px; background: var(--cbf-accent); color: var(--cbf-accent-ink) !important; font-weight: 800; font-size: 1rem; text-decoration: none !important; box-shadow: 0 10px 26px var(--cbf-glow); }
/* YouTube */
.cb-landing .cb-yt .cb-yt-head { display: flex; justify-content: space-between; align-items: flex-end; gap: 24px; flex-wrap: wrap; margin-bottom: 28px; }
.cb-landing .cb-yt .cb-yt-intro { margin-bottom: 0 !important; }
.cb-landing .cb-yt .cb-yt-chan { display: flex; align-items: center; gap: 18px; flex-wrap: wrap; }
.cb-landing .cb-yt .cb-yt-stat { display: flex; flex-direction: column; line-height: 1.15; }
.cb-landing .cb-yt .cb-yt-stat strong { font-size: 1.5rem; font-weight: 900; color: var(--cbf-ink) !important; font-variant-numeric: tabular-nums; }
.cb-landing .cb-yt .cb-yt-stat em { font-style: normal; font-size: .8rem; font-weight: 700; color: var(--cbf-muted) !important; }
.cb-landing .cb-yt .cb-yt-btn { background: #e62117; color: #fff !important; box-shadow: 0 10px 26px rgba(230,33,23,.25); }
.cb-landing .cb-yt .cb-yt-btn svg { width: 22px; height: 22px; fill: currentColor; }
.cb-landing .cb-yt .cb-yt-main { margin-bottom: 20px; }
.cb-landing .cb-yt .cb-yt-play { position: relative; display: block; width: 100%; padding: 0; border: 0; background: #000; cursor: pointer; border-radius: 18px; overflow: hidden; aspect-ratio: 16 / 9; }
.cb-landing .cb-yt .cb-yt-main .cb-yt-play img { width: 100%; height: 100%; object-fit: cover; display: block; opacity: .92; }
.cb-landing .cb-yt .cb-yt-play:focus-visible { outline: 3px solid var(--cbf-accent); outline-offset: 3px; }
.cb-landing .cb-yt .cb-yt-playbtn { position: absolute; inset: 0; margin: auto; width: 84px; height: 84px; border-radius: 50%; background: rgba(230,33,23,.95); display: flex; align-items: center; justify-content: center; box-shadow: 0 10px 30px rgba(0,0,0,.35); transition: transform .18s ease; }
.cb-landing .cb-yt .cb-yt-playbtn svg { width: 40px; height: 40px; fill: #fff; margin-left: 4px; }
.cb-landing .cb-yt .cb-yt-play:hover .cb-yt-playbtn { transform: scale(1.06); }
.cb-landing .cb-yt .cb-yt-playbtn--s { width: 52px; height: 52px; } .cb-landing .cb-yt .cb-yt-playbtn--s svg { width: 26px; height: 26px; }
.cb-landing .cb-yt .cb-yt-frame { aspect-ratio: 16 / 9; border-radius: 18px; overflow: hidden; background: #000; }
.cb-landing .cb-yt .cb-yt-frame iframe { width: 100%; height: 100%; border: 0; display: block; }
.cb-landing .cb-yt .cb-yt-main-t { font-size: 1.2rem !important; font-weight: 800 !important; color: var(--cbf-ink) !important; margin: 14px 0 0 !important; }
.cb-landing .cb-yt .cb-yt-grid { display: grid; grid-template-columns: repeat(auto-fit, minmax(220px, 1fr)); gap: 16px; }
.cb-landing .cb-yt .cb-yt-card { display: flex; flex-direction: column; gap: 10px; text-align: left; background: transparent; border: 0; padding: 0; cursor: pointer; aspect-ratio: auto; border-radius: 0; overflow: visible; }
.cb-landing .cb-yt .cb-yt-card-media { position: relative; display: block; aspect-ratio: 16 / 9; border-radius: 14px; overflow: hidden; background: #000; }
.cb-landing .cb-yt .cb-yt-card-media img { width: 100%; height: 100%; object-fit: cover; display: block; }
.cb-landing .cb-yt .cb-yt-card-t { font-size: .95rem; font-weight: 700; line-height: 1.35; color: var(--cbf-ink) !important; font-family: var(--font-main); }
.cb-landing .cb-yt .cb-yt-card:focus-visible { outline: 3px solid var(--cbf-accent); outline-offset: 3px; border-radius: 14px; }
/* promo_courses - link do landingu na miniaturze i tytule */
.cb-landing .promo-card__link { color: inherit !important; text-decoration: none !important; }
@media (max-width: 860px) { .cb-landing .cb-blog, .cb-landing .cb-yt { padding: 56px 16px; } .cb-landing .cb-yt .cb-yt-playbtn { width: 64px; height: 64px; } }
@media (prefers-reduced-motion: reduce) { .cb-landing .cb-blog .cb-blog-card, .cb-landing .cb-yt .cb-yt-playbtn { transition: none; } .cb-landing .cb-blog .cb-blog-card:hover { transform: none; } }

/* ═══════════════════════════════════════════════════
   video_testimonials (.cb-vt), shortcode_block (.cb-sb), jasny wariant slidera opinii
   ═══════════════════════════════════════════════════ */
.cb-landing .cb-vt, .cb-landing .cb-sb {
    --cbf-surface: #fff; --cbf-ink: #0d1b2a; --cbf-muted: #5d6f82; --cbf-line: #e2e9f0;
    --cbf-accent: #2ac4ea; --cbf-accent-ink: #062634; --cbf-accent-text: #1077a0; --cbf-chip: #eef6fa; --cbf-glow: rgba(42,196,234,.18);
    padding: 72px 20px;
}
.cb-landing .cb-vt.section-dark, .cb-landing .cb-sb.section-dark { --cbf-surface: rgba(255,255,255,.05); --cbf-ink: #fff; --cbf-muted: #9fb2c4; --cbf-line: rgba(255,255,255,.13); --cbf-accent-text: #2ac4ea; --cbf-chip: rgba(42,196,234,.12); background: linear-gradient(135deg, #0d2430 0%, #1a1a2e 50%, #0d0d1a 100%); }
.cb-landing .cb-vt.section-light { background: #f6f9fb; }
.cb-landing .cb-vt .container, .cb-landing .cb-sb .container { max-width: 1120px; text-align: center; }
.cb-landing .cb-vt .cb-vt-eyebrow, .cb-landing .cb-sb .cb-sb-eyebrow { display: inline-block; margin: 0 0 12px; font-size: .76rem; font-weight: 800; letter-spacing: .1em; text-transform: uppercase; color: var(--cbf-accent-text) !important; }
.cb-landing .cb-vt .cb-vt-title, .cb-landing .cb-sb .cb-sb-title { font-size: clamp(1.7rem, 3.8vw, 2.5rem) !important; font-weight: 900 !important; color: var(--cbf-ink) !important; margin: 0 0 12px !important; text-wrap: balance; }
.cb-landing .cb-vt .cb-vt-intro, .cb-landing .cb-sb .cb-sb-intro { font-size: 1.08rem !important; font-weight: 500 !important; color: var(--cbf-muted) !important; max-width: 64ch; margin: 0 auto 32px !important; }
.cb-landing .cb-vt .cb-vt-grid { display: grid; gap: 22px; text-align: left; grid-template-columns: repeat(auto-fit, minmax(260px, 1fr)); }
.cb-landing .cb-vt--portrait .cb-vt-grid { grid-template-columns: repeat(auto-fit, minmax(220px, 300px)); justify-content: center; }
.cb-landing .cb-vt--cols-2 .cb-vt-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
.cb-landing .cb-vt--cols-3 .cb-vt-grid { grid-template-columns: repeat(3, minmax(0, 1fr)); }
.cb-landing .cb-vt--cols-4 .cb-vt-grid { grid-template-columns: repeat(4, minmax(0, 1fr)); }
.cb-landing .cb-vt .cb-vt-card { margin: 0; display: flex; flex-direction: column; gap: 12px; background: var(--cbf-surface); border: 1px solid var(--cbf-line); border-radius: 18px; overflow: hidden; }
.cb-landing .cb-vt .cb-vt-play, .cb-landing .cb-vt .cb-vt-frame { position: relative; display: block; width: 100%; padding: 0; border: 0; background: #0d1b2a; cursor: pointer; aspect-ratio: 16 / 9; overflow: hidden; }
.cb-landing .cb-vt--portrait .cb-vt-play, .cb-landing .cb-vt--portrait .cb-vt-frame { aspect-ratio: 9 / 16; }
.cb-landing .cb-vt .cb-vt-play img { width: 100%; height: 100%; object-fit: cover; display: block; opacity: .92; }
.cb-landing .cb-vt .cb-vt-nothumb { position: absolute; inset: 0; background: linear-gradient(135deg, #0d2430, #1a1a2e); }
.cb-landing .cb-vt .cb-vt-playbtn { position: absolute; inset: 0; margin: auto; width: 68px; height: 68px; border-radius: 50%; background: var(--cbf-accent); display: flex; align-items: center; justify-content: center; box-shadow: 0 10px 30px rgba(0,0,0,.35); transition: transform .18s ease; }
.cb-landing .cb-vt .cb-vt-playbtn svg { width: 32px; height: 32px; fill: var(--cbf-accent-ink); margin-left: 3px; }
.cb-landing .cb-vt .cb-vt-play:hover .cb-vt-playbtn { transform: scale(1.07); }
.cb-landing .cb-vt .cb-vt-play:focus-visible { outline: 3px solid var(--cbf-accent); outline-offset: -3px; }
.cb-landing .cb-vt .cb-vt-frame iframe { width: 100%; height: 100%; border: 0; display: block; }
.cb-landing .cb-vt figcaption { display: flex; flex-direction: column; gap: 4px; padding: 4px 20px 20px; }
.cb-landing .cb-vt .cb-vt-quote { font-size: .97rem !important; line-height: 1.5 !important; color: var(--cbf-muted) !important; margin: 0 0 8px !important; font-style: normal; }
.cb-landing .cb-vt .cb-vt-name { font-weight: 800; color: var(--cbf-ink) !important; }
.cb-landing .cb-vt .cb-vt-role { font-size: .86rem; font-weight: 600; color: var(--cbf-accent-text) !important; }
.cb-landing .cb-sb .cb-sb-body { text-align: left; }
.cb-landing .cb-sb .cb-sb-cta { margin-top: 28px; }
.cb-landing .cb-sb .cb-sb-btn { display: inline-flex; align-items: center; gap: 10px; padding: 14px 26px; border-radius: 12px; background: #e62117; color: #fff !important; font-weight: 800; font-size: 1rem; text-decoration: none !important; box-shadow: 0 10px 26px rgba(230,33,23,.25); }
/* jasny wariant slidera opinii kursantow */
.cb-landing .testimonials-slider-section.section-light { background: #fff; color: #0d1b2a; }
.cb-landing .testimonials-slider-section.section-light .testimonial-card:not(:last-child)::after { background: #e2e9f0; }
.cb-landing .testimonials-slider-section.section-light .testimonial-card blockquote { color: #3b4b5c !important; }
.cb-landing .testimonials-slider-section.section-light .testimonial-card .author { color: #0d1b2a !important; }
.cb-landing .testimonials-slider-section.section-light .testimonial-card .course { color: #1077a0 !important; }
.cb-landing .testimonials-slider-section.section-light .testimonial-arrow { background: #fff; border: 1px solid #c9d4e0; color: #0d1b2a !important; box-shadow: 0 4px 14px rgba(13,27,42,.08); }
.cb-landing .testimonials-slider-section.section-light .testimonial-arrow:hover { background: #eef6fa; }
.cb-landing .testimonials-slider-section.section-light .testimonial-dot { background: #c9d4e0; }
.cb-landing .testimonials-slider-section.section-light .testimonial-dot.active { background: #2ac4ea; }
.cb-landing .testimonials-slider-section.section-light .cbb-toggle-more { color: #1077a0 !important; }
@media (max-width: 860px) { .cb-landing .cb-vt, .cb-landing .cb-sb { padding: 56px 16px; } .cb-landing .cb-vt--cols-2 .cb-vt-grid, .cb-landing .cb-vt--cols-3 .cb-vt-grid, .cb-landing .cb-vt--cols-4 .cb-vt-grid { grid-template-columns: minmax(0, 1fr); } .cb-landing .cb-vt--portrait .cb-vt-grid { grid-template-columns: repeat(auto-fit, minmax(160px, 1fr)); } }
@media (prefers-reduced-motion: reduce) { .cb-landing .cb-vt .cb-vt-playbtn { transition: none; } }

/* jasny slider: przyciemnienie "rozwin" pod cytatem ma blednac w biel, nie w granat */
.cb-landing .testimonials-slider-section.section-light .testimonial-card blockquote::after { background: linear-gradient(to bottom, rgba(255,255,255,0), #fff 85%) !important; }
.cb-landing .testimonials-slider-section.section-light .testimonial-card .cbb-toggle-more { background: transparent; border-color: #c9d4e0; }

/* ═══════════════════════════════════════════════════
   course_slider (.cb-cs) - karty Edumall/Tutor w przewijanym torze
   ═══════════════════════════════════════════════════ */
.cb-landing .cb-cs { --cbf-ink: #0d1b2a; --cbf-muted: #5d6f82; --cbf-line: #e2e9f0; --cbf-accent: #2ac4ea; --cbf-accent-ink: #062634; --cbf-accent-text: #1077a0; --cbf-chip: #eef6fa; --cbf-glow: rgba(42,196,234,.18); padding: 72px 20px; }
.cb-landing .cb-cs.section-light { background: #f6f9fb; }
.cb-landing .cb-cs.section-dark { --cbf-ink: #fff; --cbf-muted: #9fb2c4; --cbf-line: rgba(255,255,255,.13); --cbf-accent-text: #2ac4ea; background: linear-gradient(135deg, #0d2430 0%, #1a1a2e 50%, #0d0d1a 100%); }
.cb-landing .cb-cs .container { max-width: 1160px; }
.cb-landing .cb-cs .cb-cs-head { display: flex; justify-content: space-between; align-items: flex-end; gap: 24px; margin-bottom: 26px; }
.cb-landing .cb-cs .cb-cs-eyebrow { display: inline-block; margin: 0 0 12px; font-size: .76rem; font-weight: 800; letter-spacing: .1em; text-transform: uppercase; color: var(--cbf-accent-text) !important; }
.cb-landing .cb-cs .cb-cs-title { font-size: clamp(1.7rem, 3.8vw, 2.5rem) !important; font-weight: 900 !important; color: var(--cbf-ink) !important; margin: 0 0 10px !important; text-wrap: balance; }
.cb-landing .cb-cs .cb-cs-intro { font-size: 1.08rem !important; font-weight: 500 !important; color: var(--cbf-muted) !important; max-width: 64ch; margin: 0 !important; }
.cb-landing .cb-cs .cb-cs-nav { display: flex; gap: 10px; flex: 0 0 auto; }
.cb-landing .cb-cs .cb-cs-arr { width: 46px; height: 46px; border-radius: 50%; border: 1px solid var(--cbf-line); background: #fff; color: var(--cbf-ink); cursor: pointer; display: flex; align-items: center; justify-content: center; box-shadow: 0 4px 14px rgba(13,27,42,.08); transition: background .18s ease; }
.cb-landing .cb-cs .cb-cs-arr svg { width: 22px; height: 22px; fill: none; stroke: currentColor; stroke-width: 2.4; stroke-linecap: round; stroke-linejoin: round; }
.cb-landing .cb-cs .cb-cs-arr:hover { background: var(--cbf-chip); }
.cb-landing .cb-cs .cb-cs-arr:disabled { opacity: .35; cursor: default; }
.cb-landing .cb-cs .cb-cs-arr:focus-visible { outline: 3px solid var(--cbf-accent); outline-offset: 2px; }
.cb-landing .cb-cs .cb-cs-track { display: grid; grid-auto-flow: column; grid-auto-columns: calc((100% - 24px * 3) / 4); column-gap: 24px; overflow-x: auto; scroll-snap-type: x mandatory; scroll-padding: 0; padding: 8px 2px 16px; scrollbar-width: none; -webkit-overflow-scrolling: touch; }
.cb-landing .cb-cs--kol-3 .cb-cs-track { grid-auto-columns: calc((100% - 24px * 2) / 3); }
.cb-landing .cb-cs--kol-2 .cb-cs-track { grid-auto-columns: calc((100% - 24px) / 2); }
.cb-landing .cb-cs--kol-5 .cb-cs-track { grid-auto-columns: calc((100% - 24px * 4) / 5); }
.cb-landing .cb-cs .cb-cs-track::-webkit-scrollbar { display: none; }
.cb-landing .cb-cs .cb-cs-track:focus-visible { outline: 3px solid var(--cbf-accent); outline-offset: 4px; border-radius: 8px; }
.cb-landing .cb-cs .cb-cs-item { scroll-snap-align: start; min-width: 0; }
.cb-landing .cb-cs .cb-cs-item .course-loop-wrapper { height: 100%; }
.cb-landing .cb-cs .cb-cs-dots { display: flex; justify-content: center; gap: 8px; margin-top: 10px; }
.cb-landing .cb-cs .cb-cs-dot { width: 10px; height: 10px; border-radius: 50%; border: 0; padding: 0; background: #c9d4e0; cursor: pointer; transition: transform .2s, background .2s; }
.cb-landing .cb-cs .cb-cs-dot.active { background: var(--cbf-accent); transform: scale(1.3); }
.cb-landing .cb-cs .cb-cs-cta { text-align: center; margin-top: 28px; }
.cb-landing .cb-cs .cb-cs-btn { display: inline-flex; align-items: center; gap: 10px; padding: 14px 26px; border-radius: 12px; background: var(--cbf-accent); color: var(--cbf-accent-ink) !important; font-weight: 800; font-size: 1rem; text-decoration: none !important; box-shadow: 0 10px 26px var(--cbf-glow); }
/* karty Edumall w torze: tekst wg motywu, nie wg .section-light frameworka */
@media (max-width: 1100px) { .cb-landing .cb-cs .cb-cs-track, .cb-landing .cb-cs--kol-5 .cb-cs-track { grid-auto-columns: calc((100% - 24px * 2) / 3); } }
@media (max-width: 860px) { .cb-landing .cb-cs { padding: 56px 16px; } .cb-landing .cb-cs .cb-cs-head { flex-direction: column; align-items: flex-start; } .cb-landing .cb-cs .cb-cs-track, .cb-landing .cb-cs--kol-3 .cb-cs-track, .cb-landing .cb-cs--kol-5 .cb-cs-track { grid-auto-columns: calc((100% - 20px) / 2); column-gap: 20px; } }
@media (max-width: 560px) { .cb-landing .cb-cs .cb-cs-track, .cb-landing .cb-cs--kol-2 .cb-cs-track, .cb-landing .cb-cs--kol-3 .cb-cs-track { grid-auto-columns: 84%; } }
@media (prefers-reduced-motion: reduce) { .cb-landing .cb-cs .cb-cs-dot, .cb-landing .cb-cs .cb-cs-arr { transition: none; } }

/* course_slider: rowne karty, przycisk zawsze na dole; licznik zamiast kropek gdy stron > 8 */
.cb-landing .cb-cs .cb-cs-item .course-loop-wrapper { display: flex; flex-direction: column; height: 100%; }
.cb-landing .cb-cs .cb-cs-item .course-loop-info { flex: 1 1 auto; display: flex; flex-direction: column; }
.cb-landing .cb-cs .cb-cs-licznik { text-align: center; margin-top: 10px; font-size: .9rem; font-weight: 700; color: var(--cbf-muted) !important; font-variant-numeric: tabular-nums; }

/* ikony motywu/Font Awesome w sekcjach CBLP: regula .cb-landing span {font-family:Inter !important} psula glify */
.cb-landing [class^="fa-"], .cb-landing [class*=" fa-"], .cb-landing [class^="tm-star"], .cb-landing [class*=" tm-star"], .cb-landing .fa-regular, .cb-landing .fa-solid, .cb-landing .fa-light, .cb-landing .fa-brands { font-family: "Font Awesome 6 Pro" !important; }
.cb-landing .fa-brands { font-family: "Font Awesome 6 Brands" !important; }
/* karty kursow w sliderze: bez zajawki i wishlisty - jednolita wysokosc, jeden komunikat */
.cb-landing .cb-cs .cb-cs-item .course-loop-excerpt, .cb-landing .cb-cs .cb-cs-item .course-loop-wishlist-button { display: none !important; }
/* karty grid-02 w sliderze (jak na dawnej glownej kursy.controlbyte.pl): kolory/typografia motywu Edumall,
   a nie reguly .section-light frameworka (div/span/p !important) */
.cb-landing .cb-cs .cb-cs-item { font-size: 14px; }
.cb-landing .cb-cs .cb-cs-item .course-thumbnail { border-radius: 8px; overflow: hidden; aspect-ratio: 480 / 304; background: #eef2f6; }
.cb-landing .cb-cs .cb-cs-item .course-thumbnail img { width: 100%; height: 100%; object-fit: cover; display: block; transition: transform .35s ease; }
.cb-landing .cb-cs .cb-cs-item:hover .course-thumbnail img { transform: scale(1.04); }
.cb-landing .cb-cs .cb-cs-item .tutor-course-badge, .cb-landing .cb-cs .cb-cs-item .course-loop-badges div { color: #fff !important; }
.cb-landing .cb-cs .cb-cs-item .course-loop-badge-level { margin: 0 0 8px !important; line-height: 1.6; }
.cb-landing .cb-cs .cb-cs-item .course-loop-badge-level .badge-text { color: #5b63fe !important; font-size: 12px !important; font-weight: 600 !important; }
.cb-landing .cb-cs .cb-cs-item .course-loop-badge-level.intermediate .badge-text { color: #d18b00 !important; background: rgba(247,192,77,.18); }
.cb-landing .cb-cs .cb-cs-item .course-loop-badge-level.expert .badge-text, .cb-landing .cb-cs .cb-cs-item .course-loop-badge-level.advanced .badge-text { color: #c02a2a !important; background: rgba(211,24,25,.12); }
.cb-landing .cb-cs .cb-cs-item .course-loop-title { font-size: 15px !important; line-height: 1.55 !important; font-weight: 700 !important; margin: 0 !important; color: #252525 !important; letter-spacing: 0; }
.cb-landing .cb-cs .cb-cs-item .course-loop-title a { color: #252525 !important; font-weight: 700 !important; text-decoration: none !important; transition: color .18s ease; }
.cb-landing .cb-cs .cb-cs-item .course-loop-title a:hover { color: #0071dc !important; }
.cb-landing .cb-cs .cb-cs-item .course-loop-instructor { margin: 5px 0 0 !important; font-size: 13.5px !important; color: #696969 !important; line-height: 1.7; }
.cb-landing .cb-cs .cb-cs-item .course-loop-instructor a { color: #0071dc !important; font-weight: 400 !important; font-size: 13.5px !important; line-height: 1.7 !important; text-decoration: none !important; display: inline; }
.cb-landing .cb-cs .cb-cs-item .course-loop-price { margin: 6px 0 0 !important; }
.cb-landing .cb-cs .cb-cs-item .course-loop-price .price, .cb-landing .cb-cs .cb-cs-item .course-loop-price .price span, .cb-landing .cb-cs .cb-cs-item .course-loop-price .price bdi, .cb-landing .cb-cs .cb-cs-item .course-loop-price .tutor-price, .cb-landing .cb-cs .cb-cs-item .course-loop-price .tutor-price span { color: #031f42 !important; font-size: 16px !important; font-weight: 700 !important; line-height: 26px !important; margin: 0 !important; }
.cb-landing .cb-cs .cb-cs-item .course-loop-price .price ins, .cb-landing .cb-cs .cb-cs-item .course-loop-price .price ins span, .cb-landing .cb-cs .cb-cs-item .course-loop-price .price ins bdi { color: #d31819 !important; text-decoration: none !important; }
.cb-landing .cb-cs .cb-cs-item .course-loop-price .price del, .cb-landing .cb-cs .cb-cs-item .course-loop-price .price del span, .cb-landing .cb-cs .cb-cs-item .course-loop-price .price del bdi { color: #ababab !important; font-size: 14px !important; font-weight: 500 !important; }
.cb-landing .cb-cs .cb-cs-item .course-loop-price del { margin-left: 8px !important; text-decoration: line-through !important; }
.cb-landing .cb-cs .cb-cs-item .course-loop-rating { margin: 3px 0 0 !important; display: flex; align-items: center; gap: 5px; }
.cb-landing .cb-cs .cb-cs-item .tm-star-rating span { color: #f7c04d !important; font-size: 14px !important; }
.cb-landing .cb-cs .cb-cs-item .rating-count { color: #9b9b9b !important; font-size: 13px !important; }
.cb-landing .cb-cs .cb-cs-item .course-loop-quick-view { display: none; }
/* shop_categories: kafelki kategorii sklepu (markup cards_grid) - cala karta klikalna, licznik produktow */
.cb-landing .cb-shopcat .cb-cards-card { position: relative; }
.cb-landing .cb-shopcat .cb-cards-card:hover { transform: translateY(-4px); box-shadow: 0 16px 36px rgba(13,27,42,.10); }
.cb-landing .cb-shopcat .cb-cards-h a::after { content: ""; position: absolute; inset: 0; border-radius: inherit; }
.cb-landing .cb-shopcat .cb-cards-h a { color: #0d1b2a !important; text-decoration: none !important; }
.cb-landing .cb-shopcat .cb-cards-card:hover .cb-cards-h a { color: #0f6fb8 !important; }
.cb-landing .cb-shopcat .cb-cards-media img { transition: transform .35s ease; }
.cb-landing .cb-shopcat .cb-cards-card:hover .cb-cards-media img { transform: scale(1.04); }
.cb-landing .cb-shopcat .cb-shopcat-count { display: inline-block; margin-top: auto; padding-top: 12px; font-size: .8rem !important; font-weight: 700; letter-spacing: .04em; text-transform: uppercase; color: #1077a0 !important; }
.cb-landing .cb-shopcat .cb-cards-p { flex: 0 0 auto; }
.cb-landing .cb-shopcat .cb-cards-h { font-size: 1.08rem !important; line-height: 1.3 !important; overflow-wrap: anywhere; hyphens: auto; }
/* shop_categories compact: rzad malych kafelkow (obrazek + nazwa + liczba) i link do sklepu */
.cb-landing .cb-shopcat--compact { padding: 36px 20px 48px; }
.cb-landing .cb-shopcat--compact.section-light { background: #fff; }
.cb-landing .cb-shopcat--compact .container { max-width: 1160px; }
.cb-landing .cb-shopcat--compact .cb-shopcat-head { display: flex; justify-content: space-between; align-items: flex-end; gap: 20px; margin-bottom: 18px; }
.cb-landing .cb-shopcat--compact .cb-shopcat-eyebrow { display: block; margin: 0 0 6px; font-size: .74rem; font-weight: 800; letter-spacing: .1em; text-transform: uppercase; color: #1077a0 !important; }
.cb-landing .cb-shopcat--compact .cb-shopcat-title { font-size: 1.35rem !important; font-weight: 800 !important; color: #0d1b2a !important; margin: 0 !important; }
.cb-landing .cb-shopcat--compact .cb-shopcat-more { flex: 0 0 auto; font-weight: 700; font-size: .95rem; color: #0f6fb8 !important; text-decoration: none !important; white-space: nowrap; }
.cb-landing .cb-shopcat--compact .cb-shopcat-more:hover { text-decoration: underline !important; }
.cb-landing .cb-shopcat--compact .cb-shopcat-row { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 16px; }
.cb-landing .cb-shopcat--compact .cb-shopcat-row--3 { grid-template-columns: repeat(3, minmax(0, 1fr)); }
.cb-landing .cb-shopcat--compact .cb-shopcat-tile { display: flex; align-items: center; gap: 14px; padding: 10px 14px 10px 10px; border: 1px solid #e2e9f0; border-radius: 12px; background: #fff; text-decoration: none !important; transition: box-shadow .18s ease, transform .18s ease, border-color .18s ease; min-width: 0; }
.cb-landing .cb-shopcat--compact .cb-shopcat-tile:hover { border-color: #bcd8ea; box-shadow: 0 10px 24px rgba(13,27,42,.08); transform: translateY(-2px); }
.cb-landing .cb-shopcat--compact .cb-shopcat-tile-img { flex: 0 0 84px; width: 84px; aspect-ratio: 16 / 10; border-radius: 8px; overflow: hidden; background: #eef2f6; }
.cb-landing .cb-shopcat--compact .cb-shopcat-tile-img img { width: 100%; height: 100%; object-fit: cover; display: block; }
.cb-landing .cb-shopcat--compact .cb-shopcat-tile-body { display: flex; flex-direction: column; gap: 2px; min-width: 0; }
.cb-landing .cb-shopcat--compact .cb-shopcat-tile-t { font-size: .95rem !important; font-weight: 700 !important; line-height: 1.3 !important; color: #0d1b2a !important; }
.cb-landing .cb-shopcat--compact .cb-shopcat-tile:hover .cb-shopcat-tile-t { color: #0f6fb8 !important; }
.cb-landing .cb-shopcat--compact .cb-shopcat-tile-n { font-size: .78rem !important; font-weight: 600; color: #5d6f82 !important; }
@media (max-width: 900px) { .cb-landing .cb-shopcat--compact .cb-shopcat-row, .cb-landing .cb-shopcat--compact .cb-shopcat-row--3 { grid-template-columns: repeat(2, minmax(0, 1fr)); } }
@media (max-width: 560px) { .cb-landing .cb-shopcat--compact { padding: 28px 16px 36px; } .cb-landing .cb-shopcat--compact .cb-shopcat-head { flex-direction: column; align-items: flex-start; gap: 8px; } .cb-landing .cb-shopcat--compact .cb-shopcat-row, .cb-landing .cb-shopcat--compact .cb-shopcat-row--3 { grid-template-columns: 1fr; } }
/* experts: przycisk pod siatka + jasny wariant kart osob */
.cb-landing .cb-experts-section .cb-experts-cta { text-align: center; margin-top: 34px; }
.cb-landing .cb-experts-section .cb-experts-btn { display: inline-flex; align-items: center; gap: 8px; padding: 13px 24px; border-radius: 12px; border: 2px solid #2ac4ea; color: #0f6fb8 !important; font-weight: 800; font-size: 1rem; text-decoration: none !important; background: #fff; transition: background .18s ease, color .18s ease; }
.cb-landing .cb-experts-section.section-dark .cb-experts-btn { background: transparent; color: #fff !important; }
.cb-landing .cb-experts-section .cb-experts-btn:hover { background: #2ac4ea; color: #062634 !important; }
/* promo_live: aktualne promocje z WooCommerce + odliczanie + karta pakietu */
.cb-landing .cb-pl { padding: 64px 20px; }
.cb-landing .cb-pl.section-light { background: #fff; }
.cb-landing .cb-pl .container { max-width: 1160px; }
.cb-landing .cb-pl .cb-pl-head { display: flex; justify-content: space-between; align-items: flex-end; gap: 28px; margin-bottom: 28px; flex-wrap: wrap; }
.cb-landing .cb-pl .cb-pl-eyebrow { display: inline-block; margin: 0 0 10px; font-size: .76rem; font-weight: 800; letter-spacing: .1em; text-transform: uppercase; color: #c02a2a !important; }
.cb-landing .cb-pl .cb-pl-title { font-size: clamp(1.7rem, 3.6vw, 2.4rem) !important; font-weight: 900 !important; color: #0d1b2a !important; margin: 0 0 8px !important; }
.cb-landing .cb-pl .cb-pl-intro { font-size: 1.05rem !important; color: #5d6f82 !important; margin: 0 !important; max-width: 60ch; }
.cb-landing .cb-pl .cb-pl-count { text-align: center; padding: 14px 18px; border: 1px solid #f3d3d3; background: #fff6f6; border-radius: 14px; }
.cb-landing .cb-pl .cb-pl-count-label { display: block; font-size: .8rem; font-weight: 800; letter-spacing: .06em; text-transform: uppercase; color: #c02a2a !important; margin-bottom: 8px; }
.cb-landing .cb-pl .cb-pl-count-boxes { display: flex; gap: 8px; justify-content: center; }
.cb-landing .cb-pl .cb-pl-count-boxes div { min-width: 58px; padding: 6px 4px; border-radius: 10px; background: #0d1b2a; color: #fff !important; }
.cb-landing .cb-pl .cb-pl-count-boxes b { display: block; font-size: 1.4rem; font-weight: 900; font-variant-numeric: tabular-nums; line-height: 1.1; color: #fff !important; }
.cb-landing .cb-pl .cb-pl-count-boxes small { display: block; font-size: .68rem; text-transform: uppercase; letter-spacing: .05em; color: #9fb2c4 !important; }
.cb-landing .cb-pl .cb-pl-count-note { display: block; margin-top: 8px; font-size: .82rem; color: #5d6f82 !important; }
.cb-landing .cb-pl .cb-pl-grid { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 22px; }
.cb-landing .cb-pl .cb-pl-grid--1, .cb-landing .cb-pl .cb-pl-grid--2 { grid-template-columns: repeat(2, minmax(0, 1fr)); max-width: 760px; margin: 0 auto; }
.cb-landing .cb-pl .cb-pl-grid--3 { grid-template-columns: repeat(3, minmax(0, 1fr)); }
.cb-landing .cb-pl .cb-pl-card { display: flex; flex-direction: column; border: 2px solid #dff3e4; border-radius: 14px; overflow: hidden; background: #fff; transition: box-shadow .18s ease, transform .18s ease; }
.cb-landing .cb-pl .cb-pl-card:hover { box-shadow: 0 16px 36px rgba(13,27,42,.10); transform: translateY(-3px); }
.cb-landing .cb-pl .cb-pl-media { position: relative; display: block; aspect-ratio: 16 / 10; background: #eef2f6; }
.cb-landing .cb-pl .cb-pl-media img { width: 100%; height: 100%; object-fit: cover; display: block; }
.cb-landing .cb-pl .cb-pl-badge { position: absolute; top: 10px; left: 10px; padding: 5px 9px; border-radius: 6px; background: #d31819; color: #fff !important; font-size: .8rem; font-weight: 800; }
.cb-landing .cb-pl .cb-pl-body { display: flex; flex-direction: column; gap: 6px; padding: 14px 16px 16px; flex: 1 1 auto; }
.cb-landing .cb-pl .cb-pl-name { font-size: .98rem !important; line-height: 1.4 !important; font-weight: 700 !important; margin: 0 !important; display: -webkit-box; -webkit-line-clamp: 3; -webkit-box-orient: vertical; overflow: hidden; }
.cb-landing .cb-pl .cb-pl-name a { color: #0d1b2a !important; text-decoration: none !important; }
.cb-landing .cb-pl .cb-pl-name a:hover { color: #0f6fb8 !important; }
.cb-landing .cb-pl .cb-pl-price { display: flex; align-items: baseline; gap: 10px; flex-wrap: wrap; margin-top: 4px; }
.cb-landing .cb-pl .cb-pl-sale { font-size: 1.45rem; font-weight: 900; color: #d31819 !important; }
.cb-landing .cb-pl .cb-pl-reg { font-size: .95rem; color: #9b9b9b !important; }
.cb-landing .cb-pl .cb-pl-save { display: inline-block; font-size: .8rem; font-weight: 700; color: #1a7f37 !important; }
.cb-landing .cb-pl .cb-pl-actions { display: flex; align-items: center; gap: 14px; margin-top: auto; padding-top: 10px; }
.cb-landing .cb-pl .cb-pl-btn { display: inline-flex; align-items: center; justify-content: center; width: 100%; padding: 12px 18px; border-radius: 10px; background: #2ac4ea; color: #062634 !important; font-weight: 800; font-size: .92rem; text-decoration: none !important; box-shadow: 0 8px 20px rgba(42,196,234,.22); }
.cb-landing .cb-pl .cb-pl-btn:hover { background: #17b3da; }
.cb-landing .cb-pl .cb-pl-link { font-size: .88rem; font-weight: 700; color: #0f6fb8 !important; text-decoration: none !important; }
.cb-landing .cb-pl .cb-pl-link:hover { text-decoration: underline !important; }
.cb-landing .cb-pl .cb-pl-pak { display: grid; grid-template-columns: 1.1fr 1.4fr; gap: 28px; align-items: center; margin-top: 26px; padding: 22px; border-radius: 16px; background: linear-gradient(135deg, #0d2430 0%, #1a1a2e 60%, #0d0d1a 100%); color: #fff; }
.cb-landing .cb-pl .cb-pl-pak-media { position: relative; border-radius: 12px; overflow: hidden; aspect-ratio: 16 / 9; background: #0d1b2a; }
.cb-landing .cb-pl .cb-pl-pak-media img { width: 100%; height: 100%; object-fit: cover; display: block; }
.cb-landing .cb-pl .cb-pl-pak .cb-pl-eyebrow { color: #2ac4ea !important; }
.cb-landing .cb-pl .cb-pl-pak-name { font-size: 1.5rem !important; font-weight: 900 !important; margin: 0 0 8px !important; line-height: 1.25 !important; }
.cb-landing .cb-pl .cb-pl-pak-name a { color: #fff !important; text-decoration: none !important; }
.cb-landing .cb-pl .cb-pl-pak-text, .cb-landing .cb-pl .cb-pl-pak-list li { color: #c9d6e2 !important; font-size: .97rem !important; }
.cb-landing .cb-pl .cb-pl-pak-text { margin: 0 0 10px !important; }
.cb-landing .cb-pl .cb-pl-pak-list { margin: 0 0 12px; padding: 0; list-style: none; display: grid; grid-template-columns: 1fr 1fr; gap: 6px 16px; }
.cb-landing .cb-pl .cb-pl-pak-list li::before { content: "✓"; color: #2ac4ea; font-weight: 900; margin-right: 8px; }
.cb-landing .cb-pl .cb-pl-price--pak .cb-pl-sale { color: #fff !important; font-size: 1.9rem; }
.cb-landing .cb-pl .cb-pl-price--pak .cb-pl-reg { color: #8ea3b8 !important; }
.cb-landing .cb-pl .cb-pl-price--pak .cb-pl-save { color: #6fe39a !important; }
.cb-landing .cb-pl .cb-pl-pak .cb-pl-link { color: #2ac4ea !important; }
.cb-landing .cb-pl .cb-pl-pak .cb-pl-btn { width: auto; min-width: 260px; }
.cb-landing .cb-pl .cb-pl-cta { text-align: center; margin-top: 22px; }
.cb-landing .cb-pl .cb-pl-more { font-weight: 800; color: #0f6fb8 !important; text-decoration: none !important; }
.cb-landing .cb-pl .cb-pl-more:hover { text-decoration: underline !important; }
@media (max-width: 1150px) { .cb-landing .cb-pl .cb-pl-grid, .cb-landing .cb-pl .cb-pl-grid--3 { grid-template-columns: repeat(2, minmax(0, 1fr)); } .cb-landing .cb-pl .cb-pl-pak { grid-template-columns: 1fr; } }
@media (max-width: 600px) { .cb-landing .cb-pl { padding: 48px 16px; } .cb-landing .cb-pl .cb-pl-grid, .cb-landing .cb-pl .cb-pl-grid--3, .cb-landing .cb-pl .cb-pl-grid--2 { grid-template-columns: 1fr; } .cb-landing .cb-pl .cb-pl-count { width: 100%; } .cb-landing .cb-pl .cb-pl-count-boxes div { min-width: 0; flex: 1; } .cb-landing .cb-pl .cb-pl-pak-list { grid-template-columns: 1fr; } }
/* page_header fade: zdjecie na calej prawej polowie, plynne przejscie w tlo po stronie tekstu */
.cb-landing .cb-ph--fade { position: relative; overflow: hidden; padding: 84px 20px 76px; min-height: 560px; display: flex; align-items: center; }
.cb-landing .cb-ph--fade .container { width: 100%; }
.cb-landing .cb-ph--fade .cb-ph-grid { grid-template-columns: minmax(0, 1fr); }
.cb-landing .cb-ph--fade .cb-ph-txt { max-width: 560px; position: relative; z-index: 2; text-align: left; }
.cb-landing .cb-ph--fade .cb-ph-media { position: absolute; top: 0; right: 0; bottom: 0; width: 62%; z-index: 1; }
.cb-landing .cb-ph--fade .cb-ph-media img { width: 100%; height: 100%; object-fit: cover; object-position: center; border-radius: 0; box-shadow: none; }
.cb-landing .cb-ph--fade .cb-ph-media::before { content: ""; position: absolute; inset: 0; z-index: 1; background: linear-gradient(90deg, #f7fafc 0%, #f7fafc 18%, rgba(247,250,252,.72) 40%, rgba(247,250,252,.15) 68%, rgba(247,250,252,0) 100%); }
.cb-landing .cb-ph--fade .cb-ph-media::after { content: ""; position: absolute; inset: 0; z-index: 1; background: linear-gradient(180deg, rgba(247,250,252,.55) 0%, rgba(247,250,252,0) 30%, rgba(247,250,252,0) 70%, rgba(247,250,252,.8) 100%); }
.cb-landing .cb-ph--fade.section-dark .cb-ph-media::before { background: linear-gradient(90deg, #0d1b2a 0%, #0d1b2a 18%, rgba(13,27,42,.7) 42%, rgba(13,27,42,0) 100%); }
.cb-landing .cb-ph--fade.section-dark .cb-ph-media::after { background: linear-gradient(180deg, rgba(13,27,42,.4) 0%, rgba(13,27,42,0) 30%, rgba(13,27,42,0) 70%, rgba(13,27,42,.85) 100%); }
.cb-landing .cb-ph--fade .cb-ph-lead p { max-width: 52ch; }
@media (max-width: 900px) {
  .cb-landing .cb-ph--fade { display: block; min-height: 0; padding: 0 0 48px; }
  .cb-landing .cb-ph--fade .cb-ph-media { position: relative; width: 100%; height: 240px; order: -1; margin: 0 0 24px; }
  .cb-landing .cb-ph--fade .cb-ph-media::before { background: linear-gradient(180deg, rgba(247,250,252,0) 40%, #f7fafc 100%); }
  .cb-landing .cb-ph--fade .cb-ph-media::after { display: none; }
  .cb-landing .cb-ph--fade .cb-ph-grid { display: block; }
  .cb-landing .cb-ph--fade .cb-ph-txt { max-width: none; padding: 0 20px; }
  .cb-landing .cb-ph--fade .cb-ph-title { font-size: clamp(1.7rem, 7vw, 2.4rem) !important; }
  .cb-landing .cb-ph--fade .cb-ph-lead p { font-size: 1.02rem !important; }
}
/* course_slider layout=grid: wszystkie karty widoczne */
.cb-landing .cb-cs--grid .cb-cs-track { display: grid; grid-auto-flow: row; grid-template-columns: repeat(4, minmax(0, 1fr)); grid-auto-columns: auto; overflow: visible; scroll-snap-type: none; row-gap: 28px; padding: 8px 2px 8px; }
.cb-landing .cb-cs--grid.cb-cs--kol-3 .cb-cs-track { grid-template-columns: repeat(3, minmax(0, 1fr)); }
.cb-landing .cb-cs--grid.cb-cs--kol-5 .cb-cs-track { grid-template-columns: repeat(5, minmax(0, 1fr)); }
.cb-landing .cb-cs--grid.cb-cs--kol-2 .cb-cs-track { grid-template-columns: repeat(2, minmax(0, 1fr)); }
@media (max-width: 1100px) { .cb-landing .cb-cs--grid .cb-cs-track, .cb-landing .cb-cs--grid.cb-cs--kol-5 .cb-cs-track { grid-template-columns: repeat(3, minmax(0, 1fr)); } }
@media (max-width: 860px) { .cb-landing .cb-cs--grid .cb-cs-track, .cb-landing .cb-cs--grid.cb-cs--kol-3 .cb-cs-track, .cb-landing .cb-cs--grid.cb-cs--kol-5 .cb-cs-track { grid-template-columns: repeat(2, minmax(0, 1fr)); } }
@media (max-width: 560px) { .cb-landing .cb-cs--grid .cb-cs-track, .cb-landing .cb-cs--grid.cb-cs--kol-2 .cb-cs-track, .cb-landing .cb-cs--grid.cb-cs--kol-3 .cb-cs-track { grid-template-columns: 1fr; } }
/* strona zwarta (meta _cb_compact=1): mniejsze odstepy i naglowki sekcji */
.cb-landing.cb-compact .cb-ph { padding: 40px 20px 32px; }
.cb-landing.cb-compact .cb-cards, .cb-landing.cb-compact .cb-cs, .cb-landing.cb-compact .cb-pl, .cb-landing.cb-compact .cb-contact, .cb-landing.cb-compact .cb-experts-section, .cb-landing.cb-compact .cb-blog, .cb-landing.cb-compact .cb-sb, .cb-landing.cb-compact .cb-vt, .cb-landing.cb-compact .partners-section, .cb-landing.cb-compact .faq-section, .cb-landing.cb-compact .testimonials-slider-section { padding-top: 40px !important; padding-bottom: 40px !important; }
.cb-landing.cb-compact .cb-cards .cb-cards-title, .cb-landing.cb-compact .cb-cs .cb-cs-title, .cb-landing.cb-compact .cb-pl .cb-pl-title, .cb-landing.cb-compact .cb-blog .cb-blog-title, .cb-landing.cb-compact .cb-sb .cb-sb-title, .cb-landing.cb-compact .section-title, .cb-landing.cb-compact .cb-contact .cb-contact-title, .cb-landing.cb-compact .cb-ph .cb-ph-title { font-size: clamp(1.45rem, 2.8vw, 1.9rem) !important; }
.cb-landing.cb-compact .cb-cards .cb-cards-intro { margin-bottom: 22px !important; }
.cb-landing.cb-compact .cb-cs .cb-cs-head { margin-bottom: 16px; }
.cb-landing.cb-compact .cb-cards .cb-cards-grid { gap: 16px; }
.cb-landing.cb-compact .cb-cards--cards .cb-cards-card { padding: 20px 20px 22px; }
.cb-landing.cb-compact .partners-section .divider, .cb-landing.cb-compact .cb-experts-section .divider { margin-bottom: 18px; }
/* event_bar: plaska listwa wydarzen */
.cb-landing .cb-eb { padding: 0 20px !important; }
.cb-landing .cb-eb .container { max-width: 1160px; }
.cb-landing .cb-eb .cb-eb-inner { display: flex; flex-direction: column; align-items: stretch; gap: 10px; padding: 14px 18px 14px 16px; margin: 18px 0; border: 1px solid #e2e9f0; border-left: 4px solid #2ac4ea; border-radius: 12px; background: #fff; }
.cb-landing .cb-eb.section-dark .cb-eb-inner { background: #13253a; border-color: rgba(255,255,255,.12); border-left-color: #2ac4ea; }
.cb-landing .cb-eb .cb-eb-label { display: inline-flex; align-items: center; gap: 8px; flex: 0 0 auto; font-size: .8rem; font-weight: 800; letter-spacing: .08em; text-transform: uppercase; color: #1077a0 !important; }
.cb-landing .cb-eb .cb-eb-label svg { width: 16px; height: 16px; fill: none; stroke: currentColor; stroke-width: 2; stroke-linecap: round; stroke-linejoin: round; }
.cb-landing .cb-eb .cb-eb-list { list-style: none; margin: 0; padding: 2px 0; display: flex; flex-wrap: nowrap; gap: 16px; flex: 1 1 auto; min-width: 0; overflow-x: auto; scroll-snap-type: x mandatory; scrollbar-width: thin; }
.cb-landing .cb-eb .cb-eb-item { display: flex; align-items: center; gap: 12px; min-width: 0; flex: 0 0 calc(50% - 8px); scroll-snap-align: start; padding-right: 8px; border-right: 1px solid #edf2f6; }
.cb-landing .cb-eb .cb-eb-item:last-child { border-right: 0; }
.cb-landing .cb-eb .cb-eb-title { display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical; overflow: hidden; }
.cb-landing .cb-eb .cb-eb-thumb { flex: 0 0 auto; width: 176px; aspect-ratio: 16 / 9; border-radius: 8px; overflow: hidden; background: #eef2f6; display: block; }
.cb-landing .cb-eb .cb-eb-thumb img { width: 100%; height: 100%; object-fit: cover; display: block; }
.cb-landing .cb-eb .cb-eb-body { display: flex; flex-direction: column; gap: 3px; min-width: 0; flex: 1 1 auto; }
.cb-landing .cb-eb .cb-eb-date { display: flex; align-items: baseline; gap: 10px; flex-wrap: wrap; font-weight: 800; font-size: .9rem; color: #0d1b2a !important; }
.cb-landing .cb-eb .cb-eb-date small { font-size: .74rem; font-weight: 600; color: #5d6f82 !important; }
.cb-landing .cb-eb .cb-eb-title { font-size: 1rem; font-weight: 600; color: #0d1b2a !important; line-height: 1.3; }
.cb-landing .cb-eb .cb-eb-title a { color: #0d1b2a !important; text-decoration: none !important; }
.cb-landing .cb-eb .cb-eb-title a:hover { color: #0f6fb8 !important; }
.cb-landing .cb-eb .cb-eb-btn { margin-left: auto; flex: 0 0 auto; font-size: .86rem; font-weight: 800; color: #0f6fb8 !important; text-decoration: none !important; white-space: nowrap; }
.cb-landing .cb-eb .cb-eb-btn:hover { text-decoration: underline !important; }
.cb-landing .cb-eb.section-dark .cb-eb-date, .cb-landing .cb-eb.section-dark .cb-eb-title, .cb-landing .cb-eb.section-dark .cb-eb-title a { color: #fff !important; }
@media (max-width: 900px) { .cb-landing .cb-eb .cb-eb-list { width: 100%; } .cb-landing .cb-eb .cb-eb-item { flex: 0 0 86%; border-right: 0; } .cb-landing .cb-eb .cb-eb-thumb { width: 120px; } }
/* course_slider grid z grupami: podtytuly */
.cb-landing .cb-cs .cb-cs-group { font-size: 1.15rem !important; font-weight: 800 !important; color: #0d1b2a !important; margin: 26px 0 4px !important; padding-bottom: 8px; border-bottom: 2px solid #e2e9f0; }
.cb-landing .cb-cs .cb-cs-group:first-of-type { margin-top: 0 !important; }
/* strona zwarta: zaokraglenia o polowe mniejsze (karty, przyciski, miniatury, formularze, listwa wydarzen) */
.cb-landing.cb-compact .cb-cards .cb-cards-card, .cb-landing.cb-compact .cb-blog .cb-blog-card, .cb-landing.cb-compact .cb-contact .cb-contact-form, .cb-landing.cb-compact .cb-ph .cb-ph-media img, .cb-landing.cb-compact .cb-yt .cb-yt-frame, .cb-landing.cb-compact .cb-expert-card { border-radius: 9px !important; }
.cb-landing.cb-compact .cb-jobs .cb-jobs-card, .cb-landing.cb-compact .cb-pl .cb-pl-pak { border-radius: 8px !important; }
.cb-landing.cb-compact .cb-cards .cb-cards-media, .cb-landing.cb-compact .cb-cards .cb-cards-media img { border-radius: 9px 9px 0 0 !important; }
.cb-landing.cb-compact .cb-pl .cb-pl-card, .cb-landing.cb-compact .cb-pl .cb-pl-count, .cb-landing.cb-compact .cb-contact .cb-contact-way, .cb-landing.cb-compact .cb-yt .cb-yt-card-media { border-radius: 7px !important; }
.cb-landing.cb-compact .cb-cards .cb-cards-btn, .cb-landing.cb-compact .cb-ph .cb-ph-btn, .cb-landing.cb-compact .cb-cs .cb-cs-btn, .cb-landing.cb-compact .cb-blog .cb-blog-btn, .cb-landing.cb-compact .cb-yt .cb-yt-btn, .cb-landing.cb-compact .cb-sb .cb-sb-btn, .cb-landing.cb-compact .cb-contact .cb-contact-btn, .cb-landing.cb-compact .cb-experts-section .cb-experts-btn, .cb-landing.cb-compact .cb-jobs .cb-jobs-btn, .cb-landing.cb-compact .cb-eb .cb-eb-inner, .cb-landing.cb-compact .cb-pl .cb-pl-pak-media { border-radius: 6px !important; }
.cb-landing.cb-compact .cb-pl .cb-pl-btn, .cb-landing.cb-compact .cb-pl .cb-pl-count-boxes div, .cb-landing.cb-compact .cb-contact .cb-contact-field input, .cb-landing.cb-compact .cb-contact .cb-contact-field select, .cb-landing.cb-compact .cb-contact .cb-contact-field textarea { border-radius: 5px !important; }
.cb-landing.cb-compact .cb-cs .cb-cs-item .course-thumbnail, .cb-landing.cb-compact .cb-eb .cb-eb-thumb, .cb-landing.cb-compact .cb-cs .cb-cs-arr { border-radius: 4px !important; }
.cb-landing.cb-compact .cb-pl .cb-pl-badge, .cb-landing.cb-compact .cb-cards .cb-cards-badge, .cb-landing.cb-compact .cb-cs .cb-cs-item .badge-text, .cb-landing.cb-compact .cb-cs .cb-cs-item .tutor-course-badge { border-radius: 3px !important; }
.cb-landing.cb-compact .cb-ph .cb-ph-eyebrow, .cb-landing.cb-compact .cb-cards .cb-cards-badge { border-radius: 6px !important; }
.cb-landing.cb-compact .cb-expert-photo, .cb-landing.cb-compact .cb-expert-photo img { border-radius: 50% !important; }
.cb-landing.cb-compact .cb-stopka-social a, .cb-landing.cb-compact .cb-stopka-platnosci li, .cb-landing.cb-compact .cb-stopka-msues img { border-radius: 4px !important; }
/* poprawki 17.09: chip kategorii na blogu w jednej linii, badge karty nie wystaje, odliczanie promocji pod tytulem */
.cb-landing .cb-blog .cb-blog-cat { white-space: nowrap; overflow: hidden; text-overflow: ellipsis; max-width: 62%; display: inline-block; vertical-align: middle; }
.cb-landing .cb-blog .cb-blog-meta { flex-wrap: nowrap; min-width: 0; }
.cb-landing .cb-cards .cb-cards-badge { position: static; align-self: flex-start; margin: 0 0 2px; }
.cb-landing .cb-pl .cb-pl-head { flex-direction: column; align-items: flex-start; gap: 18px; }
.cb-landing .cb-pl .cb-pl-count { display: flex; align-items: center; gap: 16px; flex-wrap: wrap; text-align: left; padding: 10px 16px; }
.cb-landing .cb-pl .cb-pl-count-label { margin: 0; }
.cb-landing .cb-pl .cb-pl-count-boxes div { min-width: 50px; padding: 4px 4px; }
.cb-landing .cb-pl .cb-pl-count-boxes b { font-size: 1.15rem; }
.cb-landing .cb-pl .cb-pl-count-note { margin: 0; }
/* latest_posts: styl "clean" (zdjecie 16:9, kategoria z kwadracikiem, tytul, czas czytania) i naglowek do lewej */
.cb-landing .cb-blog--left .container { text-align: left; }
.cb-landing .cb-blog--left .cb-blog-intro { margin-inline: 0 !important; }
.cb-landing .cb-blog--clean .cb-blog-grid { gap: 28px 24px; }
.cb-landing .cb-blog--clean .cb-blog-card { background: transparent !important; border: 0 !important; border-radius: 0 !important; overflow: visible; box-shadow: none !important; }
.cb-landing .cb-blog--clean .cb-blog-card:hover { transform: none; box-shadow: none !important; }
.cb-landing .cb-blog--clean .cb-blog-media { border-radius: 12px; aspect-ratio: 16 / 9; }
.cb-landing .cb-blog--clean .cb-blog-media img { transition: transform .35s ease; }
.cb-landing .cb-blog--clean .cb-blog-card:hover .cb-blog-media img { transform: scale(1.03); }
.cb-landing .cb-blog--clean .cb-blog-body { padding: 16px 0 0; gap: 8px; }
.cb-landing .cb-blog--clean .cb-blog-kicker { display: inline-flex; align-items: center; gap: 8px; font-size: .68rem; font-weight: 700; letter-spacing: .12em; text-transform: uppercase; color: var(--cbf-ink) !important; text-decoration: none !important; }
.cb-landing .cb-blog--clean .cb-blog-kicker::before { content: ""; width: 7px; height: 7px; background: var(--cbf-accent); flex: 0 0 auto; }
.cb-landing .cb-blog--clean .cb-blog-h { font-size: 1.25rem !important; line-height: 1.25 !important; }
.cb-landing .cb-blog--clean .cb-blog-read { display: inline-flex; align-items: center; gap: 8px; margin-top: 2px; font-size: .84rem; font-weight: 500; color: var(--cbf-muted) !important; text-decoration: none !important; }
.cb-landing .cb-blog--clean .cb-blog-read svg { width: 14px; height: 14px; fill: none; stroke: currentColor; stroke-width: 1.8; stroke-linecap: round; stroke-linejoin: round; }
.cb-landing .cb-blog--clean .cb-blog-read:hover { color: var(--cbf-ink) !important; }
.cb-landing .cb-blog--clean.section-light { background: #fff; }
/* ═══════════════════════════════════════════════════
   Jasne warianty sekcji landingu kursu (pole "theme" w rejestrze, 18.09.2026)
   Paleta: tlo #fff / #f7fafc (pod skinem var(--sk-bg)), tekst #0d1b2a, wyciszony #5d6f82 (4,9:1),
   ramki #e2e9f0, link/akcent tekstowy #1077a0 (4,8:1), zielen cen #1e7f3c (4,8:1), czerwien #c0392b (5,2:1).
   Przyciski: var(--sk-btn) ze skina (czarne), bez skina #111 z bialym tekstem.
   Uwaga na specyficznosc: .cb-landing .section-light div/span/li/p (0,2,1) i .cb-landing .hero div (0,2,1)
   sa z !important - nadpisania ponizej maja >= (0,3,1) (element + 2 klasy + .cb-landing).
   Domyslne motywy = dotychczasowy wyglad (hero/why/instructors/project_modules/sample_lessons/industry/discord/
   cta_final/sticky_bar ciemne, reszta jasna), wiec strony bez ustawionego pola nie zmieniaja sie.
   ═══════════════════════════════════════════════════ */

/* --- naglowki w sekcjach ciemnych musza byc biale takze pod skinem lime (skin wymusza --sk-ink !important na h1-h4
       i .section-title przy (0,3,0)); .container podnosi specyficznosc do (0,4,x). Hero i final-cta bez klasy
       section-light = ciemne. --- */
.cb-landing .section-dark .container h2, .cb-landing .section-dark .container h3, .cb-landing .section-dark .container h4,
.cb-landing .section-darker .container h2, .cb-landing .section-darker .container h3, .cb-landing .section-darker .container h4,
.cb-landing .section-dark .container .section-title, .cb-landing .section-darker .container .section-title,
.cb-landing .hero:not(.section-light) .container h1, .cb-landing .hero:not(.section-light) .container h3,
.cb-landing .final-cta:not(.section-light) .container h2, .cb-landing .final-cta:not(.section-light) .container h3 {
    color: #fff !important;
}
/* ceny w hero/cta_final: kolor byl inline !important, teraz klasa (ciemny wariant bez zmian) */
.cb-landing .hero span.cb-price-hi, .cb-landing .final-cta span.cb-price-hi,
.cb-landing .section-dark span.cb-price-hi, .cb-landing .section-darker span.cb-price-hi { color: #00e88f !important; }

/* --- hero + cta_final: jasny wariant --- */
.cb-landing .hero.section-light, .cb-landing .final-cta.section-light {
    background: #fff;
    border-bottom: 1px solid #e2e9f0;
}
.cb-landing section.final-cta.section-light { border-bottom: 0; border-top: 1px solid #e2e9f0; background: #f7fafc; background: var(--sk-bg, #f7fafc); }
.cb-landing .hero.section-light h1, .cb-landing .hero.section-light h2, .cb-landing .hero.section-light h3,
.cb-landing .hero.section-light p, .cb-landing .hero.section-light li, .cb-landing .hero.section-light span, .cb-landing .hero.section-light div,
.cb-landing .final-cta.section-light h1, .cb-landing .final-cta.section-light h2, .cb-landing .final-cta.section-light h3,
.cb-landing .final-cta.section-light p, .cb-landing .final-cta.section-light li, .cb-landing .final-cta.section-light span, .cb-landing .final-cta.section-light div {
    color: #0d1b2a !important;
}
.cb-landing .hero.section-light p.hero-sub, .cb-landing .hero.section-light p.hero-tagline,
.cb-landing .hero.section-light div.money-back-badge, .cb-landing .final-cta.section-light div.money-back-badge,
.cb-landing .hero.section-light div.registration-closes, .cb-landing .final-cta.section-light div.registration-closes,
.cb-landing .hero.section-light div.seats-remaining, .cb-landing .final-cta.section-light div.seats-remaining,
.cb-landing .hero.section-light p.form-note, .cb-landing .final-cta.section-light p.form-note,
.cb-landing .final-cta.section-light .container > p,
.cb-landing .hero.section-light span.countdown-label, .cb-landing .final-cta.section-light span.countdown-label {
    color: #5d6f82 !important;
    opacity: 1 !important;
}
.cb-landing .hero.section-light p.hero-tagline { color: #3b4b5c !important; }
.cb-landing .hero.section-light .hero-video-wrap { box-shadow: 0 12px 40px rgba(13,27,42,.14); }
/* ceny: sprzedazowa w atramencie (jak ceny na glownej), stara przekreslona wyciszona, oszczednosc zielona */
.cb-landing .hero.section-light span.cb-price-hi, .cb-landing .final-cta.section-light span.cb-price-hi { color: #0d1b2a !important; }
.cb-landing .hero.section-light .price-row span[style*="line-through"], .cb-landing .final-cta.section-light .price-row span[style*="line-through"] {
    color: #5d6f82 !important; opacity: 1 !important;
}
.cb-landing .hero.section-light div.savings-badge, .cb-landing .final-cta.section-light div.savings-badge { color: #1e7f3c !important; }
/* pudelko z cena / lista oczekujacych: jasna karta z cienka ramka */
.cb-landing .hero.section-light .waitlist-box, .cb-landing .hero.section-light .sales-box,
.cb-landing .final-cta.section-light .waitlist-box, .cb-landing .final-cta.section-light .sales-box {
    background: #f7fafc !important; background: var(--sk-bg, #f7fafc) !important;
    border: 1px solid #e2e9f0 !important;
    backdrop-filter: none !important;
    box-shadow: none !important;
}
.cb-landing .hero.section-light .waitlist-box:has(getresponse-form), .cb-landing .final-cta.section-light .waitlist-box:has(getresponse-form) { background: transparent !important; border: 0 !important; }
.cb-landing .hero.section-light .waitlist-box input[type="email"], .cb-landing .final-cta.section-light .waitlist-box input[type="email"] {
    background: #fff !important; border: 1px solid #c9d4e0 !important; color: #0d1b2a !important;
}
.cb-landing .hero.section-light .waitlist-box input[type="email"]::placeholder, .cb-landing .final-cta.section-light .waitlist-box input[type="email"]::placeholder { color: #5d6f82; }
/* przyciski: styl skina (czarny, bialy tekst), bez neonowej zieleni */
.cb-landing .hero.section-light a.cta-btn, .cb-landing .hero.section-light button.cta-btn,
.cb-landing .final-cta.section-light a.cta-btn, .cb-landing .final-cta.section-light button.cta-btn {
    background: #111 !important; background: var(--sk-btn, #111) !important;
    color: #fff !important; color: var(--sk-btn-ink, #fff) !important;
    border: 0 !important; border-radius: 10px !important;
    text-decoration: none !important;
    box-shadow: none !important;
}
.cb-landing .hero.section-light a.cta-btn:hover, .cb-landing .hero.section-light button.cta-btn:hover,
.cb-landing .final-cta.section-light a.cta-btn:hover, .cb-landing .final-cta.section-light button.cta-btn:hover {
    background: #2b2b2b !important; background: var(--sk-btn-hover, #2b2b2b) !important;
}
/* odliczanie w jasnym hero: biale kolka, ciemne cyfry (regula .section-light .countdown-number juz istnieje) */
.cb-landing .hero.section-light .countdown-number, .cb-landing .final-cta.section-light .countdown-number {
    background: #fff; border-color: #c9d4e0; color: #0d1b2a !important; box-shadow: 0 2px 10px rgba(13,27,42,.08);
}

/* brak ceny regularnej (pusty span) - nie pokazuj samotnej waluty "zl" przed cena */
.cb-landing .price-row span.cb-regular-original-price:empty + span.cb-currency,
.cb-landing .price-row span.cb-original-price:empty + span.cb-currency { display: none; }

/* --- why_controlbyte, industry_testimonials, discord, bonuses: jasnoszare tlo naprzemienne (pod skinem --sk-bg);
       "section" w selektorze przebija .cb-landing.cb-skin-lime .section-light {background:#fff} (0,3,0) --- */
.cb-landing section.section-light.why-section, .cb-landing section.section-light.industry-section,
.cb-landing section.section-light.discord-section, .cb-landing section.section-light.bonuses-section,
.cb-landing section.section-light.instructors-section, .cb-landing section.section-light.sample-lessons-section {
    background: #f7fafc; background: var(--sk-bg, #f7fafc);
}
.cb-landing section.section-light.why-section .feature-img,
.cb-landing section.section-light.industry-section .industry-video,
.cb-landing section.section-light.discord-section img { box-shadow: 0 10px 30px rgba(13,27,42,.10); }
.cb-landing section.section-light.industry-section .industry-card h3 { color: #0d1b2a !important; margin-top: 4px; }

/* --- instructors: jasny wariant --- */
.cb-landing .instructors-section.section-light h3.instructor-name { color: #0d1b2a !important; }
.cb-landing .instructors-section.section-light p.instructor-role { color: #1077a0 !important; }
.cb-landing .instructors-section.section-light .instructor-blockquote {
    color: #3b4b5c !important;
    background: #fff;
    border-left-color: #2ac4ea; border-left-color: var(--sk-lime, #2ac4ea);
    box-shadow: 0 4px 16px rgba(13,27,42,.06);
}
.cb-landing .instructors-section.section-light .instructor-blockquote span.quote-mark { color: #1077a0 !important; }
.cb-landing .instructors-section.section-light .instructor-photo-wrap img {
    border-color: #fff;
    box-shadow: 0 8px 28px rgba(13,27,42,.16);
}
@media (max-width: 768px) {
    .cb-landing .instructors-section.section-light .instructor-blockquote { border-top-color: #2ac4ea; border-top-color: var(--sk-lime, #2ac4ea); }
}

/* --- project_modules: jasny wariant - biale tlo sekcji, karty jasnoszare z ramka --- */
.cb-landing .project-modules-section.section-light .module-card {
    background: #f7fafc; background: var(--sk-bg, #f7fafc);
    border: 1px solid #e2e9f0;
}
.cb-landing .project-modules-section.section-light .module-card h3 { color: #5d6f82 !important; opacity: 1; }
.cb-landing .project-modules-section.section-light .module-card h4 { color: #0d1b2a !important; }
.cb-landing .project-modules-section.section-light .module-card ul li { color: #3b4b5c !important; }
.cb-landing .project-modules-section.section-light .module-card-img,
.cb-landing .project-modules-section.section-light .module-card .video-container { box-shadow: 0 8px 24px rgba(13,27,42,.10); border-radius: var(--radius-md); overflow: hidden; }

/* --- sample_lessons: jasny wariant (karty biale) --- */
.cb-landing .sample-lessons-section.section-light .sample-lesson {
    background: #fff; border: 1px solid #e2e9f0; color: #0d1b2a !important;
}
.cb-landing .sample-lessons-section.section-light .sample-lesson:hover { box-shadow: 0 18px 40px -18px rgba(13,27,42,.25); border-color: #c9d4e0; }
.cb-landing .sample-lessons-section.section-light h3.sample-lesson__title { color: #0d1b2a !important; }
.cb-landing .sample-lessons-section.section-light span.sample-lesson__eyebrow,
.cb-landing .sample-lessons-section.section-light span.sample-lesson__link { color: #1077a0 !important; }
.cb-landing .sample-lessons-section.section-light p.sample-lessons-sub { color: #3b4b5c !important; opacity: 1; }
.cb-landing .sample-lessons-section.section-light .sample-lesson__play { color: #062634 !important; box-shadow: 0 8px 22px rgba(42,196,234,.35); }
.cb-landing .sample-lessons-section.section-light span.sample-lesson__dur { color: #fff !important; }

/* --- discord: jasny wariant --- */
.cb-landing .discord-section.section-light .container h3 { color: #0d1b2a !important; }
.cb-landing .discord-section.section-light .bullet-list li { color: #3b4b5c !important; }
/* logo Discord to PNG z bialym napisem na przezroczystym tle - na jasnym tle dostaje ciemny kafelek */
.cb-landing .discord-section.section-light .grid-2 img { background: #1a1a35; padding: 22px 22px 14px; border-radius: 18px !important; box-shadow: 0 10px 30px rgba(13,27,42,.14); }

/* --- bonuses: karty biale z ramka (na jasnoszarym tle sekcji) --- */
.cb-landing .bonuses-section.section-light .bonus-card {
    background: #fff; border: 1px solid #e2e9f0; box-shadow: none;
}
.cb-landing .bonuses-section.section-light .bonus-card h3 { color: #0d1b2a !important; }
.cb-landing .bonuses-section.section-light .bonus-card p { color: #3b4b5c !important; }

/* --- cta_mid (jasny): przycisk i ceny w palecie nowego formatu (zielen #4caf50 miala 2,8:1) --- */
.cb-landing .mid-cta.section-light .mid-cta-buy-btn {
    background: #111 !important; background: var(--sk-btn, #111) !important;
    color: #fff !important; color: var(--sk-btn-ink, #fff) !important;
    box-shadow: none !important; border-radius: 12px !important;
    letter-spacing: 0; font-size: 1.25rem !important; padding: 18px 44px !important;
}
.cb-landing .mid-cta.section-light .mid-cta-buy-btn:hover { background: #2b2b2b !important; background: var(--sk-btn-hover, #2b2b2b) !important; transform: none; }
.cb-landing .mid-cta.section-light .mid-cta-sale-price .cb-sale-price, .cb-landing .mid-cta.section-light .mid-cta-sale-price .cb-currency,
.cb-landing .mid-cta.section-light .closed-block .mid-cta-sale-price .cb-regular-price, .cb-landing .mid-cta.section-light .closed-block .mid-cta-sale-price .cb-currency { color: #0d1b2a !important; }
.cb-landing .mid-cta.section-light .price-row .cb-original-price, .cb-landing .mid-cta.section-light .price-row .cb-currency,
.cb-landing .mid-cta.section-light .closed-block .cb-regular-original-price, .cb-landing .mid-cta.section-light .closed-block .price-row .cb-currency { color: #5d6f82 !important; }
.cb-landing .mid-cta.section-light .mid-cta-deadline { color: #c0392b !important; }
.cb-landing .mid-cta.section-light .closed-block .mid-cta-deadline, .cb-landing .mid-cta.section-light .closed-block .savings-badge { color: #1e7f3c !important; }
.cb-landing .mid-cta.section-light .mid-cta-intro, .cb-landing .mid-cta.section-light .mid-cta-urgency, .cb-landing .mid-cta.section-light .mid-cta-waitlist-desc { color: #3b4b5c !important; }
.cb-landing .mid-cta.section-light .mid-cta-join-text, .cb-landing .mid-cta.section-light .mid-cta-waitlist-heading { color: #0d1b2a !important; }

@media (max-width: 768px) { .cb-landing .mid-cta.section-light .mid-cta-buy-btn { padding: 14px 28px !important; font-size: 1.05rem !important; } }

/* --- sticky_bar: jasny wariant (theme=light) - bialy pasek, czarny przycisk --- */
.cb-landing .sticky-bar.sticky-bar--light { background: #fff; border-top: 1px solid #e2e9f0; box-shadow: 0 -6px 20px rgba(13,27,42,.08); }
.cb-landing .sticky-bar.sticky-bar--light .sticky-buy-btn { background: #111 !important; background: var(--sk-btn, #111) !important; color: #fff !important; box-shadow: none; }
.cb-landing .sticky-bar.sticky-bar--light .sticky-new-price { color: #1e7f3c !important; }
.cb-landing .sticky-bar.sticky-bar--light .sticky-old-price { color: #5d6f82 !important; }

/* --- ciemne warianty sekcji, ktore dotad byly tylko jasne (theme=dark) - minimalne poprawki czytelnosci --- */
.cb-landing .course-stats-section.course-stats-section--dark { background: var(--color-darker) !important; border-top-color: rgba(255,255,255,.12); border-bottom-color: rgba(255,255,255,.12); }
.cb-landing .course-stats-section--dark .course-stat-label { color: #9fb2c4; }
.cb-landing .course-stats-section--dark .course-stat-value { color: #fff; }
.cb-landing .mid-cta.section-dark { background: var(--color-dark) !important; }
.cb-landing .value-breakdown-section.section-dark .value-item { border-bottom-color: rgba(255,255,255,.12); }
.cb-landing .value-breakdown-section.section-dark .value-icon { background: rgba(255,255,255,.10); }
.cb-landing .value-breakdown-section.section-dark .value-desc, .cb-landing .value-breakdown-section.section-dark .value-subtitle { color: #c7d2dd !important; }
.cb-landing .value-breakdown-section.section-dark .value-amount { color: #2ac4ea !important; }
.cb-landing .bonuses-section.section-dark .bonus-card p { color: #c7d2dd !important; }
.cb-landing .threat-section.section-dark .threat-points li, .cb-landing .features-section.section-dark .check-list li,
.cb-landing .enrollment-section.section-dark .target-list li, .cb-landing .certificate-section.section-dark .certificate-list li,
.cb-landing .target-audience-section.section-dark .arrow-list li { color: #fff !important; }

/* student_testimonials: eyebrow nad tytulem + kontener jak w blogu (1120px), zeby naglowki sekcji byly w jednej linii */
.cb-landing .testimonials-slider-section .container { max-width: 1120px !important; }
.cb-landing .testimonials-slider-section .cb-t-eyebrow { display: inline-block; margin: 0 0 12px; font-size: .76rem; font-weight: 800; letter-spacing: .1em; text-transform: uppercase; color: var(--cbf-accent-text, #1077a0) !important; }
/* polowka gwiazdki: motyw uzywa glifu Duotone (\10f089), ktorego font nie jest zaladowany -> pusty kwadrat. Rysujemy szara pelna gwiazde pod spodem i polowke z Font Awesome 6 Pro na wierzchu. */
.cb-landing .tm-star-rating .tm-star-half { position: relative; display: inline-block; }
.cb-landing .tm-star-rating .tm-star-half::after { content: "\f005" !important; font-family: "Font Awesome 6 Pro" !important; font-weight: 900 !important; color: #d0d5db !important; opacity: 1; }
.cb-landing .tm-star-rating .tm-star-half::before { content: "\f089" !important; font-family: "Font Awesome 6 Pro" !important; font-weight: 900 !important; position: absolute; left: 0; top: 0; color: #f7c04d; }
.cb-landing .tm-star-rating .tm-star-empty::before { font-family: "Font Awesome 6 Pro" !important; font-weight: 900 !important; }
/* course_slider: pasek meta na karcie (uczestnicy, lekcje, certyfikat, wsparcie) - jedna linia, lamie sie tylko miedzy pozycjami */
.cb-landing .cb-cs .cb-cs-item .cb-cs-meta { list-style: none; margin: 8px 0 0 !important; padding: 0 0 8px; border-bottom: 1px solid #edf1f5; display: flex; flex-wrap: wrap; gap: 4px 12px; }
.cb-landing .cb-cs .cb-cs-item .course-loop-info { padding-top: 8px !important; }
.cb-landing .cb-cs .cb-cs-item .course-loop-rating { display: flex; align-items: center; gap: 8px; flex-wrap: wrap; }
.cb-landing .cb-cs .cb-cs-item .course-loop-rating + .course-loop-price { margin-top: 8px !important; }
.cb-landing .cb-cs .cb-cs-item .rating-count { color: #5d6f82 !important; font-size: 12px !important; }
.cb-landing .cb-cs .cb-cs-item .cb-cs-meta li { display: inline-flex; align-items: center; gap: 5px; white-space: nowrap; font-size: 12px !important; line-height: 1.2; color: #5d6f82 !important; margin: 0 !important; }
.cb-landing .cb-cs .cb-cs-item .cb-cs-meta svg { width: 12px; height: 12px; flex: 0 0 auto; fill: #7a8794; }
.cb-landing .cb-cs .cb-cs-item .cb-cs-meta span { color: #5d6f82 !important; font-size: 12px !important; white-space: nowrap; }
/* karta kursu wg makiety (18.09.2026) */
.cb-landing .cb-cs .cb-cs-item .cb-card { background: #fff; border: 1px solid #e6ebf0; border-radius: 14px; overflow: hidden; display: flex; flex-direction: column; height: 100%; }
.cb-landing .cb-cs .cb-cs-item .cb-card-img { position: relative; display: block; aspect-ratio: 16 / 10; overflow: hidden; background: #f3f6f9; }
.cb-landing .cb-cs .cb-cs-item .cb-card-img img { width: 100%; height: 100%; object-fit: cover; display: block; }
.cb-landing .cb-cs .cb-cs-item .cb-card-badges { position: absolute; left: 12px; bottom: 12px; z-index: 2; display: flex; flex-direction: column; align-items: flex-start; gap: 6px; }
.cb-landing .cb-cs .cb-cs-item .cb-card-badges .tutor-course-badge { position: static !important; margin: 0 !important; background: #d31819 !important; color: #fff !important; font-size: 12px !important; font-weight: 700 !important; line-height: 1.3 !important; padding: 4px 10px !important; border-radius: 6px !important; box-shadow: 0 1px 4px rgba(0,0,0,.18); }
.cb-landing .cb-cs .cb-cs-item .cb-card-badges .tutor-course-badge.free { background: #1e7f3c !important; }
.cb-landing .cb-cs .cb-cs-item .cb-card-badges .course-loop-badge-level { margin: 0 !important; line-height: 1 !important; }
.cb-landing .cb-cs .cb-cs-item .cb-card-badges .badge-text { display: inline-block; background: #e7f1ff !important; color: #1552b8 !important; font-size: 11px !important; font-weight: 700 !important; letter-spacing: .08em; text-transform: uppercase; padding: 5px 10px !important; border-radius: 6px !important; box-shadow: 0 1px 4px rgba(0,0,0,.15); }
.cb-landing .cb-cs .cb-cs-item .cb-card-badges .course-loop-badge-level.intermediate .badge-text { background: #fff1d6 !important; color: #a35a00 !important; }
.cb-landing .cb-cs .cb-cs-item .cb-card-badges .course-loop-badge-level.expert .badge-text, .cb-landing .cb-cs .cb-cs-item .cb-card-badges .course-loop-badge-level.advanced .badge-text { background: #fde4e4 !important; color: #b42318 !important; }
.cb-landing .cb-cs .cb-cs-item .cb-card-body { padding: 14px 16px 16px; display: flex; flex-direction: column; flex: 1 1 auto; }
.cb-landing .cb-cs .cb-cs-item .cb-card-body h3.course-loop-title { margin: 0 0 10px !important; font-size: 16px !important; line-height: 1.4 !important; font-weight: 600 !important; }
.cb-landing .cb-cs .cb-cs-item .cb-card-body h3.course-loop-title a { color: #0d1b2a !important; text-decoration: none !important; }
.cb-landing .cb-cs .cb-cs-item .cb-card-body .cb-cs-meta { margin: 0 0 8px !important; padding: 0 !important; border: 0 !important; gap: 4px 10px; }
.cb-landing .cb-cs .cb-cs-item .cb-card-body .cb-cs-meta li { gap: 4px; }
.cb-landing .cb-cs .cb-cs-item .cb-card-body .cb-cs-meta svg { width: 11px; height: 11px; }
.cb-landing .cb-cs .cb-cs-item .cb-card-rating { display: flex; align-items: center; gap: 8px; flex-wrap: wrap; padding-bottom: 12px; margin-bottom: 12px; border-bottom: 1px solid #edf1f5; }
.cb-landing .cb-cs .cb-cs-item .cb-card-rating .tm-star-rating { margin: 0 !important; }
.cb-landing .cb-cs .cb-cs-item .cb-card-ucz { font-size: 12px !important; color: #5d6f82 !important; }
.cb-landing .cb-cs .cb-cs-item .cb-card-price { margin: auto 0 12px; }
.cb-landing .cb-cs .cb-cs-item .cb-card-price p.price { margin: 0 !important; display: flex; align-items: baseline; gap: 8px; flex-wrap: wrap; line-height: 1.1 !important; }
.cb-landing .cb-cs .cb-cs-item .cb-card-price ins { order: 0; text-decoration: none !important; background: none !important; font-size: 22px !important; font-weight: 700 !important; color: #0d1b2a !important; letter-spacing: -.01em; }
.cb-landing .cb-cs .cb-cs-item .cb-card-price p.price:has(del) ins, .cb-landing .cb-cs .cb-cs-item .cb-card-price p.price:has(del) ins span, .cb-landing .cb-cs .cb-cs-item .cb-card-price p.price:has(del) ins bdi { color: #d31819 !important; }
.cb-landing .cb-cs .cb-cs-item .cb-card-price ins span, .cb-landing .cb-cs .cb-cs-item .cb-card-price ins bdi { color: #0d1b2a !important; font-size: inherit !important; font-weight: inherit !important; }
.cb-landing .cb-cs .cb-cs-item .cb-card-price ins .woocommerce-Price-currencySymbol { font-size: 14px !important; font-weight: 600 !important; }
.cb-landing .cb-cs .cb-cs-item .cb-card-price .decimals-separator { display: none !important; }
.cb-landing .cb-cs .cb-cs-item .cb-card-price del { order: 1; font-size: 13px !important; color: #8a97a5 !important; text-decoration: line-through; }
.cb-landing .cb-cs .cb-cs-item .cb-card-price del span, .cb-landing .cb-cs .cb-cs-item .cb-card-price del bdi { color: #8a97a5 !important; font-size: 13px !important; font-weight: 400 !important; }
.cb-landing .cb-cs .cb-cs-item .cb-card-price .cb-card-free { font-size: 22px !important; font-weight: 700 !important; color: #1e7f3c !important; }
.cb-landing .cb-cs .cb-cs-item .cb-card-btn { display: flex; align-items: center; justify-content: space-between; gap: 10px; padding: 8px 12px; border-radius: 6px; line-height: 1.3; background: #111; background: var(--sk-btn, #111); color: #fff !important; font-weight: 600; font-size: 15px; text-decoration: none !important; transition: background .2s; }
.cb-landing .cb-cs .cb-cs-item .cb-card-btn span { color: #fff !important; font-size: 13px !important; }
.cb-landing .cb-cs .cb-cs-item .cb-card-btn:hover { background: #2b2b2b; background: var(--sk-btn-hover, #2b2b2b); }
.cb-landing .cb-cs .cb-cs-item .cb-card-btn svg { width: 13px; height: 13px; flex: 0 0 auto; fill: none; stroke: currentColor; stroke-width: 2; stroke-linecap: round; stroke-linejoin: round; }
.cb-landing .cb-cs .cb-cs-item .course-loop-wrapper { display: none; }

/* partnerzy: loga kolorowe od razu (pole "Kolor logotypow") */
.cb-landing .partners-section--kolor .partners-track img, .cb-landing.cb-skin-lime .partners-section--kolor img { filter: none !important; opacity: 1 !important; }
.cb-landing .partners-section--kolor .container > .partners-slider:first-child { margin-top: 0; }
.cb-landing .partners-section--kolor, .cb-landing.cb-compact .partners-section--kolor { padding-top: 18px !important; padding-bottom: 18px !important; }
.cb-landing .partners-section--kolor .partners-track img { height: 30px !important; max-width: 130px; object-fit: contain; }
.cb-landing .partners-section--kolor .partners-track { gap: 48px; }
@media (max-width: 767px) { .cb-landing .partners-section--kolor .partners-track img { height: 24px !important; max-width: 100px; } .cb-landing .partners-section--kolor .partners-track { gap: 32px; } }

/* promocje: karta jak karta kursu (kopia regul .cb-card dla .cb-pl-card) */
.cb-landing .cb-pl .cb-pl-card.cb-card { background: #fff; border: 1px solid #e6ebf0; border-radius: 14px; overflow: hidden; display: flex; flex-direction: column; height: 100%; }
.cb-landing .cb-pl .cb-pl-card .cb-card-img { position: relative; display: block; aspect-ratio: 16 / 10; overflow: hidden; background: #f3f6f9; }
.cb-landing .cb-pl .cb-pl-card .cb-card-img img { width: 100%; height: 100%; object-fit: cover; display: block; }
.cb-landing .cb-pl .cb-pl-card .cb-card-badges { position: absolute; left: 12px; bottom: 12px; z-index: 2; display: flex; flex-direction: column; align-items: flex-start; gap: 6px; }
.cb-landing .cb-pl .cb-pl-card .cb-card-badges .tutor-course-badge { position: static !important; margin: 0 !important; background: #d31819 !important; color: #fff !important; font-size: 12px !important; font-weight: 700 !important; line-height: 1.3 !important; padding: 4px 10px !important; border-radius: 6px !important; box-shadow: 0 1px 4px rgba(0,0,0,.18); }
.cb-landing .cb-pl .cb-pl-card .cb-card-badges .tutor-course-badge.free { background: #1e7f3c !important; }
.cb-landing .cb-pl .cb-pl-card .cb-card-badges .course-loop-badge-level { margin: 0 !important; line-height: 1 !important; }
.cb-landing .cb-pl .cb-pl-card .cb-card-badges .badge-text { display: inline-block; background: #e7f1ff !important; color: #1552b8 !important; font-size: 11px !important; font-weight: 700 !important; letter-spacing: .08em; text-transform: uppercase; padding: 5px 10px !important; border-radius: 6px !important; box-shadow: 0 1px 4px rgba(0,0,0,.15); }
.cb-landing .cb-pl .cb-pl-card .cb-card-badges .course-loop-badge-level.intermediate .badge-text { background: #fff1d6 !important; color: #a35a00 !important; }
.cb-landing .cb-pl .cb-pl-card .cb-card-badges .course-loop-badge-level.expert .badge-text, .cb-landing .cb-pl .cb-pl-card .cb-card-badges .course-loop-badge-level.advanced .badge-text { background: #fde4e4 !important; color: #b42318 !important; }
.cb-landing .cb-pl .cb-pl-card .cb-card-body { padding: 14px 16px 16px; display: flex; flex-direction: column; flex: 1 1 auto; }
.cb-landing .cb-pl .cb-pl-card .cb-card-body h3.course-loop-title { margin: 0 0 10px !important; font-size: 16px !important; line-height: 1.4 !important; font-weight: 600 !important; }
.cb-landing .cb-pl .cb-pl-card .cb-card-body h3.course-loop-title a { color: #0d1b2a !important; text-decoration: none !important; }
.cb-landing .cb-pl .cb-pl-card .cb-card-body .cb-cs-meta { margin: 0 0 8px !important; padding: 0 !important; border: 0 !important; gap: 4px 10px; }
.cb-landing .cb-pl .cb-pl-card .cb-card-body .cb-cs-meta li { gap: 4px; }
.cb-landing .cb-pl .cb-pl-card .cb-card-body .cb-cs-meta svg { width: 11px; height: 11px; }
.cb-landing .cb-pl .cb-pl-card .cb-card-rating { display: flex; align-items: center; gap: 8px; flex-wrap: wrap; padding-bottom: 12px; margin-bottom: 12px; border-bottom: 1px solid #edf1f5; }
.cb-landing .cb-pl .cb-pl-card .cb-card-rating .tm-star-rating { margin: 0 !important; }
.cb-landing .cb-pl .cb-pl-card .cb-card-ucz { font-size: 12px !important; color: #5d6f82 !important; }
.cb-landing .cb-pl .cb-pl-card .cb-card-price { margin: auto 0 12px; }
.cb-landing .cb-pl .cb-pl-card .cb-card-price p.price { margin: 0 !important; display: flex; align-items: baseline; gap: 8px; flex-wrap: wrap; line-height: 1.1 !important; }
.cb-landing .cb-pl .cb-pl-card .cb-card-price ins { order: 0; text-decoration: none !important; background: none !important; font-size: 22px !important; font-weight: 700 !important; color: #0d1b2a !important; letter-spacing: -.01em; }
.cb-landing .cb-pl .cb-pl-card .cb-card-price p.price:has(del) ins, .cb-landing .cb-pl .cb-pl-card .cb-card-price p.price:has(del) ins span, .cb-landing .cb-pl .cb-pl-card .cb-card-price p.price:has(del) ins bdi { color: #d31819 !important; }
.cb-landing .cb-pl .cb-pl-card .cb-card-price ins span, .cb-landing .cb-pl .cb-pl-card .cb-card-price ins bdi { color: #0d1b2a !important; font-size: inherit !important; font-weight: inherit !important; }
.cb-landing .cb-pl .cb-pl-card .cb-card-price ins .woocommerce-Price-currencySymbol { font-size: 14px !important; font-weight: 600 !important; }
.cb-landing .cb-pl .cb-pl-card .cb-card-price .decimals-separator { display: none !important; }
.cb-landing .cb-pl .cb-pl-card .cb-card-price del { order: 1; font-size: 13px !important; color: #8a97a5 !important; text-decoration: line-through; }
.cb-landing .cb-pl .cb-pl-card .cb-card-price del span, .cb-landing .cb-pl .cb-pl-card .cb-card-price del bdi { color: #8a97a5 !important; font-size: 13px !important; font-weight: 400 !important; }
.cb-landing .cb-pl .cb-pl-card .cb-card-price .cb-card-free { font-size: 22px !important; font-weight: 700 !important; color: #1e7f3c !important; }
.cb-landing .cb-pl .cb-pl-card .cb-card-btn { display: flex; align-items: center; justify-content: space-between; gap: 10px; padding: 8px 12px; border-radius: 6px; line-height: 1.3; background: #111; background: var(--sk-btn, #111); color: #fff !important; font-weight: 600; font-size: 15px; text-decoration: none !important; transition: background .2s; }
.cb-landing .cb-pl .cb-pl-card .cb-card-btn span { color: #fff !important; font-size: 13px !important; }
.cb-landing .cb-pl .cb-pl-card .cb-card-btn:hover { background: #2b2b2b; background: var(--sk-btn-hover, #2b2b2b); }
.cb-landing .cb-pl .cb-pl-card .cb-card-btn svg { width: 13px; height: 13px; flex: 0 0 auto; fill: none; stroke: currentColor; stroke-width: 2; stroke-linecap: round; stroke-linejoin: round; }
.cb-landing .cb-pl .cb-pl-card .cb-card-price { margin: auto 0 12px; padding-top: 12px; border-top: 1px solid #edf1f5; }
.cb-landing .cb-pl .cb-pl-card .cb-card-price p.price ins, .cb-landing .cb-pl .cb-pl-card .cb-card-price p.price:has(del) ins { color: #d31819 !important; font-family: inherit !important; }
.cb-landing .cb-pl .cb-pl-card .cb-pl-save { display: block; margin-top: 4px; font-size: 12px !important; font-weight: 600; color: #1e7f3c !important; }
.cb-landing .cb-pl .cb-pl-card h3.cb-pl-name { margin-bottom: 0 !important; }
/* promocje: odliczanie v2 (tekst po lewej, czerwone cyfry po prawej) */
.cb-landing .cb-pl .cb-pl-count--v2 { display: flex; justify-content: space-between; align-items: center; gap: 20px; width: 100%; padding: 14px 20px !important; border: 1px solid #e6ebf0 !important; background: #f7fafc !important; border-radius: 12px !important; text-align: left; }
.cb-landing .cb-pl .cb-pl-count--v2 .cb-pl-count-txt b { display: block; font-size: 15px !important; font-weight: 600; color: #0d1b2a !important; }
.cb-landing .cb-pl .cb-pl-count--v2 .cb-pl-count-txt span { display: block; margin-top: 2px; font-size: 13px !important; color: #5d6f82 !important; }
.cb-landing .cb-pl .cb-pl-count--v2 .cb-pl-count-boxes { display: flex; align-items: flex-start; gap: 10px; }
.cb-landing .cb-pl .cb-pl-count--v2 .cb-pl-count-boxes div { background: none !important; padding: 0 !important; min-width: 44px; text-align: center; border-radius: 0 !important; }
.cb-landing .cb-pl .cb-pl-count--v2 .cb-pl-count-boxes b { font-size: 24px !important; font-weight: 700 !important; color: #d31819 !important; line-height: 1 !important; font-variant-numeric: tabular-nums; }
.cb-landing .cb-pl .cb-pl-count--v2 .cb-pl-count-boxes small { display: block; margin-top: 4px; font-size: 10px !important; letter-spacing: .08em; text-transform: uppercase; color: #5d6f82 !important; }
.cb-landing .cb-pl .cb-pl-count--v2 .cb-pl-count-boxes i { font-style: normal; font-size: 20px; font-weight: 700; color: #d31819 !important; line-height: 1; margin-top: 1px; }
@media (max-width: 600px) { .cb-landing .cb-pl .cb-pl-count--v2 { flex-direction: column; align-items: flex-start; gap: 12px; } }
/* minikursy: karta mini */
.cb-landing .cb-cs .cb-cs-item .cb-card--mini .cb-card-rating { border-bottom: 0; padding-bottom: 0; margin-bottom: 12px; }
.cb-landing .cb-cs .cb-cs-item .cb-card-foot { margin-top: auto; padding-top: 12px; border-top: 1px solid #edf1f5; display: flex; flex-direction: column; gap: 8px; }
.cb-landing .cb-cs .cb-cs-item .cb-card-note { font-size: 12px !important; color: #5d6f82 !important; }
/* webinary: karty wg makiety 18.09.2026 (cards_grid style=webinar) */
.cb-landing .cb-cards--webinar .cb-cards-grid { gap: 20px; }
.cb-landing .cb-cards--webinar .container { text-align: left; }
.cb-landing .cb-cards--webinar .cb-cards-eyebrow, .cb-landing .cb-cards--webinar .cb-cards-title, .cb-landing .cb-cards--webinar .cb-cards-intro { text-align: left; margin-left: 0 !important; margin-right: 0 !important; }
.cb-landing .cb-cards--webinar .cb-cards-eyebrow { justify-content: flex-start; }
.cb-landing .cb-cards--webinar .cb-wb-card { padding: 0 !important; gap: 0; overflow: hidden; border: 1px solid #e6ebf0 !important; border-radius: 14px !important; background: #fff !important; box-shadow: none !important; }
.cb-landing .cb-cards--webinar .cb-wb-media { position: relative; display: block; aspect-ratio: 16 / 10; overflow: hidden; background: #f3f6f9; margin: 0; }
.cb-landing .cb-cards--webinar .cb-wb-media img { width: 100%; height: 100%; object-fit: cover; display: block; }
.cb-landing .cb-cards--webinar .cb-wb-free { position: absolute; left: 12px; top: 12px; background: #1e7f3c; color: #fff !important; font-size: 11px !important; font-weight: 700; letter-spacing: .08em; text-transform: uppercase; padding: 5px 10px; border-radius: 6px; box-shadow: 0 1px 4px rgba(0,0,0,.18); }
.cb-landing .cb-cards--webinar .cb-wb-body { display: flex; flex-direction: column; gap: 10px; padding: 14px 16px 16px; flex: 1 1 auto; }
.cb-landing .cb-cards--webinar .cb-wb-meta { display: flex; align-items: center; gap: 6px; color: #1077a0 !important; }
.cb-landing .cb-cards--webinar .cb-wb-meta span { font-size: 12px !important; color: #1077a0 !important; }
.cb-landing .cb-cards--webinar .cb-wb-meta i { font-style: normal; color: #8a97a5 !important; }
.cb-landing .cb-cards--webinar .cb-wb-meta svg { width: 14px; height: 14px; fill: none; stroke: currentColor; stroke-width: 1.8; stroke-linejoin: round; }
.cb-landing .cb-cards--webinar .cb-cards-h { font-size: 18px !important; font-weight: 600 !important; line-height: 1.3 !important; margin: 0 !important; }
.cb-landing .cb-cards--webinar .cb-cards-h a { color: #0d1b2a !important; text-decoration: none !important; }
.cb-landing .cb-cards--webinar .cb-wb-list { list-style: none; margin: 4px 0 6px !important; padding: 0; display: flex; flex-direction: column; gap: 8px; }
.cb-landing .cb-cards--webinar .cb-wb-list li { display: flex; gap: 8px; align-items: flex-start; margin: 0 !important; padding: 0 !important; }
.cb-landing .cb-cards--webinar .cb-wb-list li span { font-size: 14px !important; line-height: 1.45 !important; color: #5d6f82 !important; }
.cb-landing .cb-cards--webinar .cb-wb-list li::before { display: none; }
.cb-landing .cb-cards--webinar .cb-wb-list svg { width: 14px; height: 14px; flex: 0 0 auto; margin-top: 3px; fill: none; stroke: #2ac4ea; stroke: var(--sk-lime, #2ac4ea); stroke-width: 2.2; stroke-linecap: round; stroke-linejoin: round; }
.cb-landing .cb-cards--webinar .cb-wb-btn { margin-top: auto; display: flex; align-items: center; justify-content: space-between; gap: 10px; padding: 8px 12px; border-radius: 6px; background: #111; background: var(--sk-btn, #111); color: #fff !important; font-weight: 600; line-height: 1.3; text-decoration: none !important; transition: background .2s; }
.cb-landing .cb-cards--webinar .cb-wb-btn span { color: #fff !important; font-size: 13px !important; }
.cb-landing .cb-cards--webinar .cb-wb-btn:hover { background: #2b2b2b; background: var(--sk-btn-hover, #2b2b2b); }
.cb-landing .cb-cards--webinar .cb-wb-btn svg { width: 13px; height: 13px; flex: 0 0 auto; fill: none; stroke: currentColor; stroke-width: 2; stroke-linecap: round; stroke-linejoin: round; }

/* partnerzy: staly rzad (pasek technologii) */
.cb-landing .partners-section--staly, .cb-landing.cb-compact .partners-section--staly { padding-top: 28px !important; padding-bottom: 28px !important; }
.cb-landing .partners-section--left .container { text-align: left; }
.cb-landing .partners-section--staly .section-title { font-size: 22px !important; line-height: 1.3 !important; margin: 0 0 18px !important; }
.cb-landing .partners-section--left .section-title, .cb-landing .partners-section--left .cb-pt-eyebrow { text-align: left; }
.cb-landing .partners-section--staly:not(.partners-section--left) .section-title { text-align: center; }
.cb-landing .partners-section--staly:not(.partners-section--left) .cb-pt-eyebrow { justify-content: center; display: flex; }
.cb-landing .partners-section--staly .divider { display: none; }
.cb-landing .partners-section--staly .partners-track { animation-duration: 75s; gap: 64px; }
.cb-landing .partners-section--staly .cb-pt-eyebrow { display: inline-flex; align-items: center; gap: 10px; margin: 0 0 10px; font-size: .72rem !important; font-weight: 600; letter-spacing: .14em; text-transform: uppercase; color: #0d1b2a !important; }
.cb-landing .partners-section--staly .cb-pt-eyebrow::before { content: ""; width: 8px; height: 8px; background: #17b3da; background: var(--sk-lime-dark, #17b3da); flex: 0 0 auto; }
.cb-landing .partners-section--staly .partners-track img, .cb-landing.cb-skin-lime .partners-section--staly img { height: 36px !important; max-width: 150px; object-fit: contain; filter: grayscale(1) contrast(1.2) opacity(.9) !important; }
.cb-landing .partners-section--staly .partners-track img:hover, .cb-landing.cb-skin-lime .partners-section--staly img:hover { filter: none !important; }
@media (max-width: 767px) { .cb-landing .partners-section--staly .partners-track { gap: 36px; } .cb-landing .partners-section--staly .partners-track img { height: 28px !important; max-width: 110px; } .cb-landing .partners-section--staly .section-title { font-size: 20px !important; } }

/* archiwum bloga (sekcja blog_archive, strona /blog/) */
.cb-landing .cb-blog-archive h1.cb-blog-title { font-size: clamp(1.7rem, 3.4vw, 2.4rem) !important; }
.cb-landing .cb-blog-archive .cb-blog-intro { margin-bottom: 22px !important; }
.cb-landing .cb-blog-archive .cb-ba-bar { display: flex; justify-content: space-between; align-items: flex-start; gap: 16px; flex-wrap: wrap; margin: 0 0 26px; }
.cb-landing .cb-blog-archive .cb-ba-chips { display: flex; gap: 8px; flex-wrap: wrap; flex: 1 1 auto; }
.cb-landing .cb-blog-archive .cb-ba-chip { display: inline-flex; align-items: center; gap: 6px; padding: 6px 12px; border: 1px solid #e6ebf0; border-radius: 999px; background: #fff; font-size: 13px !important; font-weight: 500; color: #0d1b2a !important; text-decoration: none !important; white-space: nowrap; transition: border-color .15s; }
.cb-landing .cb-blog-archive .cb-ba-chip small { font-size: 11px !important; color: #8a97a5 !important; }
.cb-landing .cb-blog-archive .cb-ba-chip:hover { border-color: #0d1b2a; }
.cb-landing .cb-blog-archive .cb-ba-chip.is-active { background: #111; background: var(--sk-btn, #111); border-color: transparent; color: #fff !important; }
.cb-landing .cb-blog-archive .cb-ba-chip.is-active small { color: #c3c9cf !important; }
.cb-landing .cb-blog-archive .cb-ba-search { display: flex; align-items: center; gap: 8px; flex: 0 0 auto; width: 260px; max-width: 100%; border: 1px solid #e6ebf0; border-radius: 999px; padding: 5px 12px 5px 14px; background: #fff; }
.cb-landing .cb-blog-archive .cb-ba-search:focus-within { border-color: #0d1b2a; }
.cb-landing .cb-blog-archive .cb-ba-search input { border: 0 !important; outline: 0 !important; background: none !important; box-shadow: none !important; font-size: 13px !important; color: #0d1b2a !important; width: 100%; height: 26px !important; min-height: 0 !important; line-height: 26px !important; padding: 0 !important; margin: 0 !important; }
.cb-landing .cb-blog-archive .cb-ba-search input::placeholder { color: #8a97a5; }
.cb-landing .cb-blog-archive .cb-ba-search button { border: 0 !important; background: none !important; padding: 0 !important; margin: 0; cursor: pointer; display: flex; align-items: center; height: 26px !important; min-height: 0 !important; line-height: 1 !important; color: #5d6f82; box-shadow: none !important; }
.cb-landing .cb-blog-archive .cb-ba-search svg { width: 16px; height: 16px; fill: none; stroke: currentColor; stroke-width: 2; stroke-linecap: round; }
.cb-landing .cb-blog-archive .cb-ba-info { margin: -12px 0 20px !important; font-size: 13px !important; color: #5d6f82 !important; }
.cb-landing .cb-blog-archive .cb-ba-info b { color: #0d1b2a !important; font-weight: 600; }
.cb-landing .cb-blog-archive .cb-ba-info a { color: #0d1b2a !important; text-decoration: underline; }
.cb-landing .cb-blog-archive .cb-ba-empty { padding: 40px 0; font-size: 15px !important; color: #5d6f82 !important; }
.cb-landing .cb-blog-archive .cb-ba-empty a { color: #0d1b2a !important; text-decoration: underline; }
.cb-landing .cb-blog-archive .cb-blog-grid { grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 32px 24px; }
.cb-landing .cb-blog-archive .cb-blog-h { font-size: 1.15rem !important; }
.cb-landing .cb-blog-archive .cb-ba-pag { display: flex; justify-content: center; align-items: center; gap: 6px; margin-top: 40px; flex-wrap: wrap; }
.cb-landing .cb-blog-archive .cb-ba-pag a, .cb-landing .cb-blog-archive .cb-ba-pag span { display: inline-flex; align-items: center; justify-content: center; min-width: 36px; height: 36px; padding: 0 10px; border: 1px solid #e6ebf0; border-radius: 8px; background: #fff; font-size: 13px !important; color: #0d1b2a !important; text-decoration: none !important; }
.cb-landing .cb-blog-archive .cb-ba-pag a:hover { border-color: #0d1b2a; }
.cb-landing .cb-blog-archive .cb-ba-pag span.is-active { background: #111; background: var(--sk-btn, #111); border-color: transparent; color: #fff !important; }
.cb-landing .cb-blog-archive .cb-ba-pag span.is-dots { border: 0; background: none; min-width: 20px; padding: 0; }
.cb-landing .cb-blog-archive .cb-ba-pag svg { width: 14px; height: 14px; fill: none; stroke: currentColor; stroke-width: 2; stroke-linecap: round; stroke-linejoin: round; }
@media (max-width: 900px) { .cb-landing .cb-blog-archive .cb-blog-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); } }
@media (max-width: 600px) { .cb-landing .cb-blog-archive .cb-blog-grid { grid-template-columns: 1fr; } .cb-landing .cb-blog-archive .cb-ba-chips { flex-wrap: nowrap; overflow-x: auto; padding-bottom: 4px; width: 100%; scrollbar-width: none; } .cb-landing .cb-blog-archive .cb-ba-search { width: 100%; } }

/* ═══════════════════════════════════════════════════
   Strony ofertowe (18.09.2026): naglowki sekcji do lewej (.cb-lewo), eyebrow w starszych sekcjach,
   page_header z lista i licznikami, kroki w kartach, kolumny 5/6, tabela specyfikacji (.cb-spec), galeria (.cb-gal)
   ═══════════════════════════════════════════════════ */
/* --- .cb-lewo: meta strony _cb_lewo=1 -> naglowki sekcji do lewej, bez dividera, preheader z kwadracikiem --- */
.cb-landing.cb-lewo .cb-cards .container, .cb-landing.cb-lewo .partners-section .container, .cb-landing.cb-lewo .cb-vt .container, .cb-landing.cb-lewo .cb-sb .container, .cb-landing.cb-lewo .faq-section .container, .cb-landing.cb-lewo .testimonials-slider-section .container, .cb-landing.cb-lewo .certificate-section .container, .cb-landing.cb-lewo .target-audience-section .container, .cb-landing.cb-lewo .features-section .container, .cb-landing.cb-lewo .discord-section .container, .cb-landing.cb-lewo .cb-experts-section .container { text-align: left; }
.cb-landing.cb-lewo .section-title, .cb-landing.cb-lewo .cb-cards-title, .cb-landing.cb-lewo .cb-vt-title, .cb-landing.cb-lewo .cb-sb-title, .cb-landing.cb-lewo .cb-contact-title { text-align: left; margin-left: 0 !important; margin-right: 0 !important; }
.cb-landing.cb-lewo .section-title { margin-bottom: 14px; }
.cb-landing.cb-lewo .divider { display: none; }
.cb-landing.cb-lewo .cb-cards-intro, .cb-landing.cb-lewo .cb-vt-intro, .cb-landing.cb-lewo .cb-sb-intro, .cb-landing.cb-lewo .cb-cards-note, .cb-landing.cb-lewo .cb-sec-intro { margin-left: 0 !important; margin-right: 0 !important; text-align: left; }
.cb-landing.cb-lewo .cb-cards-cta, .cb-landing.cb-lewo .cb-sb-cta { text-align: left; }
.cb-landing.cb-lewo .cb-cards-eyebrow, .cb-landing.cb-lewo .cb-vt-eyebrow, .cb-landing.cb-lewo .cb-sb-eyebrow, .cb-landing.cb-lewo .cb-contact-eyebrow, .cb-landing.cb-lewo .cb-t-eyebrow { justify-content: flex-start; }
.cb-landing.cb-lewo .target-audience-section .grid-2, .cb-landing.cb-lewo .certificate-section .grid-2 { align-items: center; }
.cb-landing.cb-lewo .faq-section .accordion { margin-left: 0; margin-right: 0; max-width: none; }
.cb-landing.cb-lewo .partners-section .partners-slider { margin-top: 4px; }
/* preheader w starszych sekcjach (target_audience, features_checklist, certificate, faq) + partnerzy karuzela */
.cb-landing .section-light .cb-sec-eyebrow, .cb-landing .section-dark .cb-sec-eyebrow, .cb-landing .section-darker .cb-sec-eyebrow, .cb-landing .partners-section .cb-pt-eyebrow { display: inline-flex; align-items: center; gap: 10px; margin: 0 0 10px; padding: 0; font-size: .72rem !important; font-weight: 600 !important; letter-spacing: .14em; text-transform: uppercase; color: #0d1b2a !important; }
.cb-landing .section-dark .cb-sec-eyebrow, .cb-landing .section-darker .cb-sec-eyebrow { color: #fff !important; }
.cb-landing .section-light .cb-sec-eyebrow::before, .cb-landing .section-dark .cb-sec-eyebrow::before, .cb-landing .section-darker .cb-sec-eyebrow::before, .cb-landing .partners-section .cb-pt-eyebrow::before { content: ""; width: 8px; height: 8px; background: #17b3da; background: var(--sk-lime-dark, #17b3da); flex: 0 0 auto; }
.cb-landing .section-light .cb-sec-intro, .cb-landing .section-dark .cb-sec-intro, .cb-landing .section-darker .cb-sec-intro { font-size: 1.05rem !important; font-weight: 400 !important; line-height: 1.6 !important; color: #5d6f82 !important; max-width: 68ch; margin: 0 auto 28px !important; }
.cb-landing.cb-lewo .section-light .cb-sec-intro, .cb-landing.cb-lewo .section-dark .cb-sec-intro, .cb-landing.cb-lewo .section-darker .cb-sec-intro { margin: 0 0 28px !important; text-align: left; }
.cb-landing .section-dark .cb-sec-intro, .cb-landing .section-darker .cb-sec-intro { color: #c7d2dd !important; }
.cb-landing .cb-ph .cb-ph-lead p { max-width: 62ch; }
/* --- page_header: lista z ptaszkami po prawej (bez obrazka) i liczniki pod przyciskami --- */
.cb-landing .cb-ph--list .cb-ph-grid { grid-template-columns: minmax(0, 1.15fr) minmax(0, 1fr); align-items: center; }
.cb-landing .cb-ph .cb-ph-side { display: flex; flex-direction: column; justify-content: center; }
.cb-landing .cb-ph .cb-ph-list { list-style: none !important; margin: 0 !important; padding: 0 !important; display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 12px 20px; }
.cb-landing .cb-ph .cb-ph-list li { display: flex; gap: 10px; align-items: flex-start; font-size: .96rem !important; line-height: 1.4 !important; font-weight: 500 !important; margin: 0 !important; color: var(--cbf-ink) !important; }
.cb-landing .cb-ph .cb-ph-list svg { width: 18px; height: 18px; flex: 0 0 auto; margin-top: 2px; fill: none; stroke: #17b3da; stroke: var(--sk-lime-dark, #17b3da); stroke-width: 2.4; stroke-linecap: round; stroke-linejoin: round; }
.cb-landing .cb-ph .cb-ph-stats { display: flex; flex-wrap: wrap; gap: 10px 40px; margin: 26px 0 0; }
.cb-landing .cb-ph--center .cb-ph-stats { justify-content: center; }
.cb-landing .cb-ph .cb-ph-stat { display: flex; flex-direction: column; gap: 2px; }
.cb-landing .cb-ph .cb-ph-stat b { font-family: var(--sk-head, inherit); font-size: 1.75rem; font-weight: 600; line-height: 1.05; letter-spacing: -0.02em; color: var(--cbf-ink) !important; }
.cb-landing .section-light .cb-ph-stat small { font-size: .74rem !important; font-weight: 600 !important; letter-spacing: .08em; text-transform: uppercase; color: #5d6f82 !important; }
@media (max-width: 860px) { .cb-landing .cb-ph--list .cb-ph-grid { grid-template-columns: minmax(0, 1fr); } .cb-landing .cb-ph .cb-ph-list { grid-template-columns: 1fr; } .cb-landing .cb-ph .cb-ph-stats { gap: 8px 24px; } .cb-landing .cb-ph .cb-ph-stat b { font-size: 1.4rem; } }
/* --- cards_grid: kroki w karcie (steps[]), kolumny 5 i 6, kafelki plain zwarte --- */
.cb-landing .cb-cards .cb-cards-steps { list-style: none !important; margin: 10px 0 0 !important; padding: 12px 0 0 !important; border-top: 1px solid var(--cbf-line); display: flex; flex-direction: column; gap: 8px; counter-reset: cbstep; }
.cb-landing .cb-cards .cb-cards-steps li { position: relative; padding-left: 34px; font-size: .9rem !important; line-height: 1.45 !important; color: var(--cbf-muted) !important; margin: 0 !important; counter-increment: cbstep; min-height: 24px; display: flex; align-items: center; }
.cb-landing .cb-cards .cb-cards-steps li::before { content: counter(cbstep); position: absolute; left: 0; top: 0; width: 24px; height: 24px; border-radius: 50%; background: #111; background: var(--sk-btn, #111); color: #fff; font-size: .74rem; font-weight: 700; display: inline-flex; align-items: center; justify-content: center; }
.cb-landing .cb-cards--cols-5 .cb-cards-grid { grid-template-columns: repeat(5, minmax(0, 1fr)); }
.cb-landing .cb-cards--cols-6 .cb-cards-grid { grid-template-columns: repeat(6, minmax(0, 1fr)); }
.cb-landing .cb-cards--cols-5 .cb-cards-card, .cb-landing .cb-cards--cols-6 .cb-cards-card { padding: 20px 18px; }
.cb-landing .cb-cards--cols-5 .cb-cards-h, .cb-landing .cb-cards--cols-6 .cb-cards-h { font-size: 1rem !important; }
.cb-landing .cb-cards--plain .cb-cards-icon { font-size: 1.6rem; }
.cb-landing .cb-cards .cb-cards-grid:empty { display: none; }
.cb-landing .cb-cards .cb-cards-grid:empty + .cb-cards-cta { margin-top: 8px; }
@media (max-width: 1000px) { .cb-landing .cb-cards--cols-5 .cb-cards-grid, .cb-landing .cb-cards--cols-6 .cb-cards-grid { grid-template-columns: repeat(3, minmax(0, 1fr)); } }
@media (max-width: 600px) { .cb-landing .cb-cards--cols-5 .cb-cards-grid, .cb-landing .cb-cards--cols-6 .cb-cards-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); } }
/* --- spec_table: tabela specyfikacji / porownania --- */
.cb-landing .cb-spec .cb-spec-wrap { overflow-x: auto; border: 1px solid #e6ebf0; border-radius: 12px; background: #fff; text-align: left; -webkit-overflow-scrolling: touch; }
.cb-landing .cb-spec table.cb-spec-table { width: 100%; border-collapse: collapse; min-width: 640px; font-size: .95rem; margin: 0; }
.cb-landing .cb-spec .cb-spec-table th, .cb-landing .cb-spec .cb-spec-table td { padding: 11px 16px; text-align: left; border-bottom: 1px solid #edf1f5; vertical-align: top; color: #0d1b2a; line-height: 1.4; font-family: var(--sk-body, inherit) !important; }
.cb-landing .cb-spec .cb-spec-table thead th { font-family: var(--sk-head, inherit); font-weight: 600; font-size: 1rem; background: #fafaf7; border-bottom: 1px solid #e6ebf0; }
.cb-landing .cb-spec .cb-spec-table thead th:first-child { font-size: .8rem; font-weight: 600; letter-spacing: .08em; text-transform: uppercase; color: #5d6f82; }
.cb-landing .cb-spec .cb-spec-table tbody th { font-weight: 500; color: #5d6f82; width: 32%; }
.cb-landing .cb-spec .cb-spec-table tbody td { font-weight: 500; width: 34%; }
.cb-landing .cb-spec .cb-spec-table tr.cb-spec-group th { background: #f3f3ef; font-size: .72rem; font-weight: 700; letter-spacing: .12em; text-transform: uppercase; color: #0d1b2a; padding: 7px 16px; width: auto; }
.cb-landing .cb-spec .cb-spec-table tr.cb-spec-total th, .cb-landing .cb-spec .cb-spec-table tr.cb-spec-total td { font-family: var(--sk-head, inherit); font-weight: 600; font-size: 1.05rem; color: #0d1b2a; background: #fafaf7; }
.cb-landing .cb-spec .cb-spec-table tbody tr:last-child th, .cb-landing .cb-spec .cb-spec-table tbody tr:last-child td { border-bottom: 0; }
.cb-landing .cb-spec .cb-spec-yes { display: inline-flex; align-items: center; gap: 6px; }
.cb-landing .cb-spec .cb-spec-yes svg { width: 16px; height: 16px; flex: 0 0 auto; fill: none; stroke: #1e7f3c; stroke-width: 2.6; stroke-linecap: round; stroke-linejoin: round; }
.cb-landing .cb-spec .cb-spec-sr { position: absolute; left: -9999px; }
.cb-landing .section-light .cb-spec .cb-spec-no { color: #a0a09a !important; }
.cb-landing.cb-lewo .cb-spec .cb-cards-note { margin-top: 14px !important; }
@media (max-width: 860px) { .cb-landing .cb-spec .cb-spec-table th, .cb-landing .cb-spec .cb-spec-table td { padding: 9px 12px; font-size: .88rem; } .cb-landing .cb-spec .cb-spec-table tbody th { position: sticky; left: 0; background: #fff; z-index: 1; } }
/* --- gallery: siatka zdjec z podpisami + powiekszenie --- */
.cb-landing .cb-gal .cb-gal-grid { display: grid; gap: 16px; text-align: left; grid-template-columns: repeat(3, minmax(0, 1fr)); }
.cb-landing .cb-gal--cols-2 .cb-gal-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
.cb-landing .cb-gal--cols-4 .cb-gal-grid { grid-template-columns: repeat(4, minmax(0, 1fr)); }
.cb-landing .cb-gal--cols-5 .cb-gal-grid { grid-template-columns: repeat(5, minmax(0, 1fr)); }
.cb-landing .cb-gal .cb-gal-item { margin: 0; border: 1px solid #e6ebf0; border-radius: 12px; overflow: hidden; background: #fff; display: flex; flex-direction: column; }
.cb-landing .cb-gal .cb-gal-link { display: block; aspect-ratio: 16 / 9; overflow: hidden; background: #f3f6f9; cursor: zoom-in; }
.cb-landing .cb-gal .cb-gal-link:not([data-cb-lb]) { cursor: pointer; }
.cb-landing .cb-gal--ratio-43 .cb-gal-link { aspect-ratio: 4 / 3; }
.cb-landing .cb-gal--ratio-auto .cb-gal-link { aspect-ratio: auto; }
.cb-landing .cb-gal .cb-gal-link img { width: 100%; height: 100%; object-fit: cover; display: block; transition: transform .25s ease; }
.cb-landing .cb-gal--ratio-auto .cb-gal-link img { height: auto; }
.cb-landing .cb-gal--contain .cb-gal-link { background: #fff; padding: 14px; }
.cb-landing .cb-gal--contain .cb-gal-link img { object-fit: contain; }
.cb-landing .cb-gal .cb-gal-item:hover img { transform: scale(1.03); }
.cb-landing .cb-gal figcaption { padding: 12px 14px 14px; display: flex; flex-direction: column; gap: 2px; }
.cb-landing .section-light .cb-gal figcaption strong { font-family: var(--sk-head, inherit); font-weight: 600; font-size: .98rem; line-height: 1.3; color: #0d1b2a !important; }
.cb-landing .section-light .cb-gal figcaption span { font-size: .86rem !important; line-height: 1.4 !important; color: #5d6f82 !important; }
@media (max-width: 900px) { .cb-landing .cb-gal .cb-gal-grid, .cb-landing .cb-gal--cols-4 .cb-gal-grid, .cb-landing .cb-gal--cols-5 .cb-gal-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); } }
@media (max-width: 520px) { .cb-landing .cb-gal .cb-gal-grid, .cb-landing .cb-gal--cols-2 .cb-gal-grid { grid-template-columns: 1fr; } }
.cb-gal-lb { position: fixed; inset: 0; z-index: 99999; background: rgba(10, 14, 18, .92); display: flex; align-items: center; justify-content: center; padding: 24px; cursor: zoom-out; }
.cb-gal-lb figure { margin: 0; max-width: 100%; max-height: 100%; display: flex; flex-direction: column; align-items: center; gap: 12px; }
.cb-gal-lb img { max-width: 100%; max-height: 84vh; border-radius: 8px; box-shadow: 0 20px 60px rgba(0, 0, 0, .5); display: block; }
.cb-gal-lb figcaption { color: #fff; font-size: .95rem; text-align: center; }
.cb-gal-lb button { position: absolute; top: 12px; right: 18px; background: none; border: 0; color: #fff; font-size: 2.2rem; line-height: 1; cursor: pointer; padding: 6px 10px; }
/* karty ze zdjeciem w skinie: podpis kursu (text) i przycisk w jednej kolumnie */
.cb-landing .cb-cards .cb-cards-card--img .cb-cards-price { margin-top: 0; }

/* slider opinii w skinie lime: karta ma margines 10px, wiec podstawa flex musi byc o 20px mniejsza (trzecia karta byla ucieta) */
.cb-landing.cb-skin-lime .testimonials-slider-section .testimonial-card { flex: 0 0 calc(33.333% - 20px) !important; margin: 0 10px !important; }
@media (max-width: 1099px) { .cb-landing.cb-skin-lime .testimonials-slider-section .testimonial-card { flex: 0 0 calc(50% - 20px) !important; } }
@media (max-width: 699px) { .cb-landing.cb-skin-lime .testimonials-slider-section .testimonial-card { flex: 0 0 calc(100% - 20px) !important; } }
/* opinie wideo (.cb-vt): styl spojny z reszta (naglowek do lewej z kropka, biale karty z cienka ramka, cytat bez belki) */
.cb-landing .cb-vt.section-light { background: #fff; }
.cb-landing .cb-vt .container { text-align: left; }
.cb-landing .cb-vt .cb-vt-eyebrow, .cb-landing.cb-skin-lime .cb-vt-eyebrow { display: inline-flex !important; align-items: center; gap: 10px; margin: 0 0 12px; padding: 0 !important; background: none !important; border: 0 !important; font-size: .72rem !important; font-weight: 600 !important; letter-spacing: .14em; text-transform: uppercase; color: #0d1b2a !important; color: var(--sk-ink, #0d1b2a) !important; }
.cb-landing .cb-vt .cb-vt-eyebrow::before, .cb-landing.cb-skin-lime .cb-vt-eyebrow::before { content: ""; width: 8px; height: 8px; background: #17b3da; background: var(--sk-lime-dark, #17b3da); flex: 0 0 auto; }
.cb-landing .cb-vt .cb-vt-title { text-align: left; margin: 0 0 10px !important; }
.cb-landing .cb-vt .cb-vt-intro { margin: 0 0 24px !important; text-align: left; font-size: 1rem !important; }
.cb-landing .cb-vt .cb-vt-grid { gap: 20px; align-items: stretch; }
.cb-landing .cb-vt .cb-vt-card, .cb-landing.cb-skin-lime .cb-vt .cb-vt-card { height: 100%; gap: 0; background: #fff !important; border: 1px solid #e6ebf0 !important; border-radius: 12px !important; box-shadow: none !important; }
.cb-landing .cb-vt .cb-vt-play, .cb-landing .cb-vt .cb-vt-frame { border-radius: 0; }
.cb-landing .cb-vt figcaption { padding: 14px 16px 16px; gap: 2px; background: none; text-align: left; }
.cb-landing .cb-vt .cb-vt-quote, .cb-landing.cb-skin-lime .cb-vt .cb-vt-quote { margin: 0 0 10px !important; padding: 0 !important; border: 0 !important; background: none !important; text-align: left; font-size: 14px !important; line-height: 1.55 !important; color: #5d6f82 !important; font-style: normal !important; quotes: none; }
.cb-landing .cb-vt .cb-vt-quote::before, .cb-landing .cb-vt .cb-vt-quote::after { content: none !important; display: none !important; }
.cb-landing .cb-vt .cb-vt-name { font-size: 14px !important; font-weight: 600 !important; color: #0d1b2a !important; text-align: left; }
.cb-landing .cb-vt .cb-vt-role { font-size: 13px !important; font-weight: 400 !important; color: #5d6f82 !important; text-align: left; }
.cb-landing .cb-vt .cb-vt-playbtn { width: 56px; height: 56px; background: #111; background: var(--sk-btn, #111); }
.cb-landing .cb-vt .cb-vt-playbtn svg { fill: #fff; width: 26px; height: 26px; }
.cb-landing.cb-compact .cb-vt { padding-top: 40px !important; padding-bottom: 40px !important; }
.cb-landing .cb-vt--portrait .cb-vt-grid { justify-content: flex-start; grid-template-columns: repeat(auto-fill, minmax(220px, 260px)); }

/* naglowek do lewej per sekcja: shortcode_block (align=left) i experts (align=left, eyebrow) */
.cb-landing .cb-sb--left .container { text-align: left; }
.cb-landing .cb-sb--left .cb-sb-title, .cb-landing .cb-sb--left .cb-sb-intro { text-align: left; margin-left: 0 !important; margin-right: 0 !important; }
.cb-landing .cb-sb--left .cb-sb-eyebrow { justify-content: flex-start; }
.cb-landing .cb-sb--left .cb-sb-cta { text-align: left; }
.cb-landing .cb-experts-section .cb-experts-eyebrow { display: inline-flex; align-items: center; gap: 10px; margin: 0 0 12px; font-size: .72rem !important; font-weight: 600; letter-spacing: .14em; text-transform: uppercase; color: #0d1b2a !important; color: var(--sk-ink, #0d1b2a) !important; }
.cb-landing .cb-experts-section .cb-experts-eyebrow::before { content: ""; width: 8px; height: 8px; background: #17b3da; background: var(--sk-lime-dark, #17b3da); flex: 0 0 auto; }
.cb-landing .cb-experts--left .container { text-align: left; }
.cb-landing .cb-experts--left .section-title { text-align: left; margin: 0 0 12px !important; }
.cb-landing .cb-experts--left .divider { display: none; }
.cb-landing .cb-experts--left .cb-experts-subtitle { text-align: left; margin-left: 0 !important; margin-right: 0 !important; }

/* slidery logotypow (kolorowy pasek na gorze i pasek technologii): bez mgly na brzegach */
.cb-landing .partners-section--kolor .partners-slider::before, .cb-landing .partners-section--kolor .partners-slider::after, .cb-landing .partners-section--staly .partners-slider::before, .cb-landing .partners-section--staly .partners-slider::after { display: none !important; }
.cb-landing .partners-section--kolor .partners-slider, .cb-landing .partners-section--staly .partners-slider { mask: none; -webkit-mask: none; }

/* hero: obietnice pod wideo (pole promises) */
.cb-landing .hero .hero-obietnice { list-style: none; margin: 18px auto 6px !important; padding: 0; display: flex; justify-content: center; gap: 10px 28px; flex-wrap: wrap; max-width: 900px; }
.cb-landing .hero .hero-obietnice li { display: inline-flex; align-items: flex-start; gap: 8px; text-align: left; margin: 0 !important; padding: 0 !important; max-width: 280px; }
.cb-landing .hero .hero-obietnice li span { font-size: 14px !important; line-height: 1.45 !important; font-weight: 500 !important; color: #0d1b2a !important; }
.cb-landing .hero.section-dark .hero-obietnice li span, .cb-landing .hero.section-darker .hero-obietnice li span { color: #fff !important; }
.cb-landing .hero .hero-obietnice svg { width: 16px; height: 16px; flex: 0 0 auto; margin-top: 2px; fill: none; stroke: #17b3da; stroke: var(--sk-lime-dark, #17b3da); stroke-width: 2.4; stroke-linecap: round; stroke-linejoin: round; }
@media (max-width: 600px) { .cb-landing .hero .hero-obietnice { flex-direction: column; align-items: flex-start; gap: 8px; margin: 14px 0 4px !important; } .cb-landing .hero .hero-obietnice li { max-width: none; } }

/* faq: jasny wariant */
.cb-landing .faq-section.section-light { background: #fff; }
.cb-landing .faq-section.section-light .faq-q { color: #0d1b2a !important; border-color: #e2e9f0; }
.cb-landing .faq-section.section-light .faq-a, .cb-landing .faq-section.section-light .faq-a p { color: #3b4b5c !important; }
.cb-landing .faq-section.section-light .faq-item { border-color: #e2e9f0; background: #fff; }

/* cards_grid: karta z miniatura (pelna szerokosc, 16:9, zaokraglony gorny brzeg) */
.cb-landing .cb-cards .cb-cards-card--img { padding-top: 0; overflow: hidden; }
.cb-landing .cb-cards .cb-cards-card--img .cb-cards-media { display: block; margin: 0 -26px 14px; aspect-ratio: 16 / 9; background: var(--cbf-chip); overflow: hidden; }
.cb-landing .cb-cards .cb-cards-card--img .cb-cards-media img { width: 100%; height: 100%; object-fit: cover; display: block; transition: transform .25s ease; }
.cb-landing .cb-cards .cb-cards-card--img:hover .cb-cards-media img { transform: scale(1.03); }
.cb-landing .cb-cards .cb-cards-card--img .cb-cards-badge { top: 12px; left: 12px; z-index: 1; }
.cb-landing .cb-cards .cb-cards-h a { color: inherit !important; text-decoration: none !important; }
.cb-landing .cb-cards .cb-cards-card--img .cb-cards-icon { display: none; }
@media (max-width: 860px) { .cb-landing .cb-cards .cb-cards-card--img .cb-cards-media { margin: 0 -22px 12px; } }
@media (prefers-reduced-motion: reduce) { .cb-landing .cb-cards .cb-cards-card--img .cb-cards-media img { transition: none; } }
