/* 1.9.1 — block-theme compatibility / breakout */
.k24-set-single .wp-block-post-content > .k24-set-page,
.k24-set-single .entry-content > .k24-set-page,
.k24-set-single main .k24-set-page {
    max-width: none !important;
}

.k24-set-single .wp-block-post-content {
    overflow: visible !important;
}

.k24-set-single .wp-block-post-content > .k24-set-page {
    position: relative;
    left: 50%;
    width: min(1180px, calc(100vw - 32px)) !important;
    margin-left: 0 !important;
    margin-right: 0 !important;
    transform: translateX(-50%);
}

.k24-set-single .wp-block-post-content:has(> .k24-set-page) {
    margin-block-start: 0 !important;
}

.k24-set-single .wp-block-post-title,
.k24-set-single .wp-block-post-featured-image,
.k24-set-single .entry-header > .entry-title,
.k24-set-single .post-thumbnail {
    display: none !important;
}

.k24-set-page {
    --k24-border: #e4e7ec;
    --k24-muted: #667085;
    --k24-text: #101828;
    --k24-surface: #ffffff;
    --k24-soft: #f8fafc;
    --k24-accent: #ffd500;
    --k24-accent-strong: #f4c900;
    --k24-radius: 22px;
    color: var(--k24-text);
    width: min(1180px, calc(100vw - 32px));
    margin: 28px auto 64px;
    font-size: 16px;
    line-height: 1.6;
}

.k24-set-page *,
.k24-set-page *::before,
.k24-set-page *::after {
    box-sizing: border-box;
}

.k24-set-breadcrumb {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
    align-items: center;
    margin: 0 0 14px;
    color: var(--k24-muted);
    font-size: 14px;
}

.k24-set-breadcrumb a {
    color: inherit;
    text-decoration: none;
}

.k24-set-breadcrumb a:hover {
    color: var(--k24-text);
    text-decoration: underline;
}

.k24-set-hero {
    display: grid;
    grid-template-columns: minmax(0, 1.02fr) minmax(0, .98fr);
    gap: clamp(28px, 5vw, 64px);
    align-items: center;
    padding: clamp(22px, 4vw, 48px);
    background: var(--k24-surface);
    border: 1px solid var(--k24-border);
    border-radius: var(--k24-radius);
    box-shadow: 0 12px 36px rgba(16, 24, 40, .06);
}

.k24-set-hero__media {
    display: grid;
    place-items: center;
    min-height: 360px;
    padding: clamp(18px, 4vw, 42px);
    background: linear-gradient(145deg, #fbfcfe 0%, #f3f5f8 100%);
    border-radius: calc(var(--k24-radius) - 6px);
    overflow: hidden;
}

.k24-set-image {
    display: block;
    width: 100%;
    max-width: 620px;
    max-height: 500px;
    height: auto;
    object-fit: contain;
    filter: drop-shadow(0 18px 22px rgba(16, 24, 40, .12));
}

.k24-set-image-placeholder {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    gap: 8px;
    width: 100%;
    min-height: 320px;
    padding: 28px;
    border: 1px solid #e4e7ec;
    border-radius: 16px;
    color: var(--k24-muted);
    background: linear-gradient(145deg, #ffffff 0%, #f6f8fb 100%);
    text-align: center;
}

.k24-set-eyebrow,
.k24-set-section__eyebrow {
    margin: 0 0 8px;
    color: #475467;
    font-size: 13px;
    font-weight: 800;
    letter-spacing: .08em;
    text-transform: uppercase;
}

.k24-set-title {
    margin: 0;
    color: var(--k24-text);
    font-size: clamp(30px, 3.6vw, 46px);
    line-height: 1.06;
    letter-spacing: -.035em;
    text-wrap: balance;
}

.k24-set-chips {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
    margin-top: 20px;
}

.k24-chip {
    display: inline-flex;
    align-items: center;
    min-height: 32px;
    padding: 5px 11px;
    border: 1px solid #dfe3e8;
    border-radius: 999px;
    background: #fff;
    color: #344054;
    font-size: 13px;
    font-weight: 700;
}

.k24-set-stat-grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 10px;
    margin-top: 24px;
}

.k24-set-stat {
    min-width: 0;
    padding: 14px 16px;
    border: 1px solid var(--k24-border);
    border-radius: 14px;
    background: var(--k24-soft);
}

.k24-set-stat span,
.k24-set-stat strong {
    display: block;
}

.k24-set-stat span {
    margin-bottom: 2px;
    color: var(--k24-muted);
    font-size: 12px;
}

.k24-set-stat strong {
    overflow: hidden;
    color: var(--k24-text);
    font-size: 16px;
    line-height: 1.3;
    text-overflow: ellipsis;
}

.k24-set-pricebox {
    display: flex;
    gap: 18px;
    align-items: center;
    justify-content: space-between;
    margin-top: 24px;
    padding: 18px;
    border-radius: 16px;
    background: #101828;
    color: #fff;
}

.k24-set-pricebox__label,
.k24-set-pricebox__merchant {
    display: block;
    color: #d0d5dd;
    font-size: 12px;
}

.k24-set-pricebox__price {
    display: block;
    margin: 2px 0;
    font-size: 26px;
    line-height: 1.2;
}

.k24-button {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 44px;
    padding: 10px 18px;
    border-radius: 11px;
    font-weight: 800;
    text-decoration: none !important;
    white-space: nowrap;
}

.k24-button--primary {
    background: var(--k24-accent);
    color: #111827 !important;
}

.k24-button--primary:hover {
    background: var(--k24-accent-strong);
}

.k24-set-build-note {
    margin-top: 24px;
    padding: 12px 14px;
    border: 1px dashed #f0c600;
    border-radius: 12px;
    background: #fffbea;
    color: #5f4b00;
    font-size: 13px;
}

.k24-set-section {
    margin-top: 22px;
    padding: clamp(22px, 4vw, 38px);
    border: 1px solid var(--k24-border);
    border-radius: var(--k24-radius);
    background: var(--k24-surface);
}

.k24-set-section__heading {
    margin-bottom: 20px;
}

.k24-set-section__heading h2 {
    margin: 0;
    color: var(--k24-text);
    font-size: clamp(24px, 3vw, 34px);
    line-height: 1.15;
    letter-spacing: -.02em;
}

.k24-set-specs {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 0 34px;
    margin: 0;
}

.k24-set-specs__row {
    display: grid;
    grid-template-columns: minmax(120px, .8fr) minmax(0, 1.2fr);
    gap: 18px;
    align-items: baseline;
    padding: 13px 0;
    border-bottom: 1px solid #edf0f3;
}

.k24-set-specs__row dt {
    color: var(--k24-muted);
    font-size: 14px;
}

.k24-set-specs__row dd {
    margin: 0;
    color: var(--k24-text);
    font-weight: 700;
    text-align: right;
}

.k24-set-specs__row a {
    color: inherit;
    text-decoration-thickness: 1px;
    text-underline-offset: 3px;
}

.k24-set-editorial__content > :first-child {
    margin-top: 0;
}

.k24-set-editorial__content > :last-child {
    margin-bottom: 0;
}

@media (max-width: 850px) {
    .k24-set-page {
        width: min(100% - 22px, 720px);
        margin-top: 16px;
    }

    .k24-set-hero {
        grid-template-columns: 1fr;
        gap: 26px;
        padding: 18px;
    }

    .k24-set-hero__media {
        min-height: 300px;
        padding: 20px;
    }

    .k24-set-title {
        font-size: clamp(30px, 8vw, 44px);
    }

    .k24-set-specs {
        grid-template-columns: 1fr;
    }
}

@media (max-width: 520px) {
    .k24-set-page {
        width: min(100% - 16px, 520px);
        margin-bottom: 38px;
    }

    .k24-set-hero,
    .k24-set-section {
        border-radius: 16px;
    }

    .k24-set-hero__media {
        min-height: 240px;
        border-radius: 12px;
    }

    .k24-set-stat-grid {
        grid-template-columns: 1fr 1fr;
    }

    .k24-set-pricebox {
        align-items: stretch;
        flex-direction: column;
    }

    .k24-set-specs__row {
        grid-template-columns: 1fr;
        gap: 2px;
    }

    .k24-set-specs__row dd {
        text-align: left;
    }
}

/* 1.9 — katalog i landingi serii */
.k24-catalog-page {
    --k24-border: #e4e7ec;
    --k24-muted: #667085;
    --k24-text: #101828;
    --k24-surface: #ffffff;
    --k24-soft: #f8fafc;
    --k24-accent: #ffd500;
    --k24-accent-strong: #f4c900;
    --k24-radius: 22px;
    color: var(--k24-text);
    width: min(1240px, calc(100vw - 32px));
    margin: 28px auto 72px;
}

.k24-catalog-page *,
.k24-catalog-page *::before,
.k24-catalog-page *::after {
    box-sizing: border-box;
}

.k24-catalog-hero {
    display: grid;
    grid-template-columns: minmax(0, 1fr) minmax(220px, 300px);
    gap: 34px;
    align-items: center;
    padding: clamp(26px, 4vw, 48px);
    border: 1px solid var(--k24-border);
    border-radius: var(--k24-radius);
    background: linear-gradient(145deg, #ffffff 0%, #f8fafc 100%);
    box-shadow: 0 12px 36px rgba(16, 24, 40, .05);
}

.k24-catalog-hero h1 {
    margin: 0;
    color: var(--k24-text);
    font-size: clamp(34px, 5vw, 58px);
    line-height: 1.02;
    letter-spacing: -.04em;
}

.k24-catalog-lead {
    max-width: 760px;
    margin: 16px 0 0;
    color: #475467;
    font-size: clamp(16px, 1.5vw, 19px);
    line-height: 1.65;
}

.k24-catalog-hero__stat {
    padding: 22px;
    border: 1px solid #e6e9ef;
    border-radius: 18px;
    background: #fff;
}

.k24-catalog-hero__stat span,
.k24-catalog-hero__stat strong,
.k24-catalog-hero__stat small {
    display: block;
}

.k24-catalog-hero__stat span {
    color: var(--k24-muted);
    font-size: 13px;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: .06em;
}

.k24-catalog-hero__stat strong {
    margin: 4px 0;
    font-size: clamp(34px, 5vw, 52px);
    line-height: 1;
    letter-spacing: -.04em;
}

.k24-catalog-hero__stat small {
    color: var(--k24-muted);
    line-height: 1.4;
}

.k24-build-banner {
    margin-top: 16px;
    padding: 12px 15px;
    border: 1px dashed #e1bd00;
    border-radius: 12px;
    background: #fffbea;
    color: #5f4b00;
    font-size: 13px;
}

.k24-catalog-filters {
    display: grid;
    grid-template-columns: minmax(220px, 1.7fr) repeat(3, minmax(150px, .75fr)) auto;
    gap: 12px;
    align-items: end;
    margin: 18px 0 24px;
    padding: 16px;
    border: 1px solid var(--k24-border);
    border-radius: 16px;
    background: #fff;
}

.k24-filter {
    min-width: 0;
}

.k24-filter > span {
    display: block;
    margin: 0 0 5px;
    color: #475467;
    font-size: 12px;
    font-weight: 800;
}

.k24-filter input,
.k24-filter select {
    width: 100%;
    min-height: 44px;
    margin: 0;
    padding: 9px 11px;
    border: 1px solid #d0d5dd;
    border-radius: 10px;
    background: #fff;
    color: var(--k24-text);
    font: inherit;
    font-size: 14px;
}

.k24-filter input:focus,
.k24-filter select:focus {
    outline: 2px solid rgba(255, 213, 0, .45);
    outline-offset: 1px;
    border-color: #c9aa00;
}

.k24-catalog-grid {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 16px;
}

.k24-card {
    display: flex;
    min-width: 0;
    flex-direction: column;
    overflow: hidden;
    border: 1px solid var(--k24-border);
    border-radius: 18px;
    background: #fff;
    box-shadow: 0 8px 24px rgba(16, 24, 40, .035);
    transition: transform .16s ease, box-shadow .16s ease, border-color .16s ease;
}

.k24-card:hover {
    transform: translateY(-2px);
    border-color: #d5dae2;
    box-shadow: 0 12px 30px rgba(16, 24, 40, .07);
}

.k24-card__media {
    position: relative;
    display: grid;
    place-items: center;
    aspect-ratio: 4 / 3;
    padding: 18px;
    overflow: hidden;
    background: linear-gradient(145deg, #fbfcfe 0%, #f2f4f7 100%);
    text-decoration: none !important;
}

.k24-card__image {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: contain;
    transition: transform .18s ease;
}

.k24-card:hover .k24-card__image {
    transform: scale(1.018);
}

.k24-card__placeholder {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    gap: 6px;
    width: 100%;
    height: 100%;
    padding: 16px;
    border: 1px solid #e4e7ec;
    border-radius: 12px;
    color: var(--k24-muted);
    background: rgba(255, 255, 255, .72);
    font-size: 13px;
    text-align: center;
}

.k24-image-placeholder__mark {
    position: relative;
    display: grid;
    grid-template-columns: repeat(3, 12px);
    gap: 3px;
    width: 48px;
    height: 34px;
    margin-bottom: 2px;
    padding: 9px 5px 5px;
    border: 2px solid #98a2b3;
    border-radius: 7px;
    opacity: .72;
}

.k24-image-placeholder__mark::before {
    content: '';
    position: absolute;
    top: 4px;
    left: 7px;
    width: 7px;
    height: 4px;
    border: 2px solid #98a2b3;
    border-bottom: 0;
    border-radius: 3px 3px 0 0;
    box-shadow: 13px 0 0 -2px #f7f8fa, 13px 0 0 0 #98a2b3, 26px 0 0 -2px #f7f8fa, 26px 0 0 0 #98a2b3;
}

.k24-image-placeholder__mark i {
    display: block;
    height: 12px;
    border-radius: 3px;
    background: #d0d5dd;
}

.k24-image-placeholder__text {
    color: #667085;
    font-weight: 800;
}

.k24-set-image-placeholder small {
    max-width: 260px;
    color: #98a2b3;
    font-size: 12px;
    line-height: 1.45;
}

.k24-card__placeholder small {
    display: none;
}

.k24-card__draft {
    position: absolute;
    top: 10px;
    right: 10px;
    padding: 4px 8px;
    border-radius: 999px;
    background: #101828;
    color: #fff;
    font-size: 10px;
    font-weight: 800;
    letter-spacing: .06em;
    text-transform: uppercase;
}

.k24-card__body {
    display: flex;
    flex: 1;
    flex-direction: column;
    padding: 16px;
}

.k24-card__meta {
    display: flex;
    flex-wrap: wrap;
    gap: 6px 10px;
    color: var(--k24-muted);
    font-size: 12px;
    font-weight: 700;
}

.k24-card__title {
    margin: 8px 0 16px;
    font-size: 18px;
    line-height: 1.3;
    letter-spacing: -.015em;
}

.k24-card__title a {
    color: var(--k24-text);
    text-decoration: none;
}

.k24-card__title a:hover {
    text-decoration: underline;
    text-decoration-thickness: 1px;
    text-underline-offset: 3px;
}

.k24-card__footer {
    display: flex;
    gap: 12px;
    align-items: center;
    justify-content: space-between;
    margin-top: auto;
    padding-top: 12px;
    border-top: 1px solid #edf0f3;
    color: var(--k24-muted);
    font-size: 12px;
}

.k24-card__footer a {
    color: #344054;
    font-weight: 800;
    text-decoration: none;
    white-space: nowrap;
}

.k24-card__footer a:hover {
    text-decoration: underline;
}

.k24-catalog-empty {
    display: grid;
    gap: 4px;
    padding: 36px;
    border: 1px dashed #cbd5e1;
    border-radius: 16px;
    color: var(--k24-muted);
    text-align: center;
}

.k24-catalog-empty strong {
    color: var(--k24-text);
}

.k24-pagination {
    margin-top: 30px;
}

.k24-pagination ul.page-numbers {
    display: flex;
    flex-wrap: wrap;
    gap: 7px;
    justify-content: center;
    margin: 0;
    padding: 0;
    list-style: none;
}

.k24-pagination .page-numbers a,
.k24-pagination .page-numbers span {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-width: 40px;
    min-height: 40px;
    padding: 7px 11px;
    border: 1px solid var(--k24-border);
    border-radius: 10px;
    background: #fff;
    color: #344054;
    font-size: 13px;
    font-weight: 700;
    text-decoration: none;
}

.k24-pagination .page-numbers .current {
    border-color: #d6b500;
    background: var(--k24-accent);
    color: #111827;
}

@media (max-width: 1080px) {
    .k24-catalog-grid {
        grid-template-columns: repeat(3, minmax(0, 1fr));
    }

    .k24-catalog-filters {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .k24-filter--search {
        grid-column: 1 / -1;
    }
}

@media (max-width: 760px) {
    .k24-catalog-page {
        width: min(100% - 18px, 720px);
        margin-top: 16px;
    }

    .k24-catalog-hero {
        grid-template-columns: 1fr;
        gap: 20px;
        padding: 22px;
        border-radius: 16px;
    }

    .k24-catalog-hero__stat {
        padding: 16px;
    }

    .k24-catalog-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
}

@media (max-width: 520px) {
    .k24-catalog-filters,
    .k24-catalog-grid {
        grid-template-columns: 1fr;
    }

    .k24-filter--search {
        grid-column: auto;
    }

    .k24-catalog-filters .k24-button {
        width: 100%;
    }

    .k24-card__media {
        aspect-ratio: 16 / 10;
    }
}

/* 1.9.2 — katalog UX polish */
.k24-results-head {
    display: flex;
    gap: 16px;
    align-items: center;
    justify-content: space-between;
    margin: 0 0 12px;
    padding: 0 2px;
}

.k24-results-head > div {
    display: flex;
    gap: 10px;
    align-items: baseline;
    min-width: 0;
}

.k24-results-head strong {
    color: var(--k24-text);
    font-size: 15px;
    line-height: 1.3;
}

.k24-results-head span {
    color: var(--k24-muted);
    font-size: 12px;
}

.k24-preview-pill {
    display: inline-flex;
    align-items: center;
    min-height: 28px;
    padding: 4px 9px;
    border: 1px solid #e4e7ec;
    border-radius: 999px;
    background: #f8fafc;
    color: #667085 !important;
    font-size: 11px !important;
    font-weight: 800;
    letter-spacing: .03em;
    text-transform: uppercase;
    white-space: nowrap;
}

.k24-card__body {
    min-height: 162px;
}

.k24-card__title {
    display: -webkit-box;
    min-height: calc(1.3em * 2);
    overflow: hidden;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 2;
    line-clamp: 2;
}

.k24-catalog-filters .k24-button {
    min-height: 44px;
}

.k24-series-hero h1 {
    font-size: clamp(34px, 4.4vw, 52px);
}

.k24-card__draft {
    background: rgba(16, 24, 40, .88);
    box-shadow: 0 2px 8px rgba(16, 24, 40, .12);
}

@media (max-width: 520px) {
    .k24-results-head {
        align-items: flex-start;
    }

    .k24-results-head > div {
        display: grid;
        gap: 2px;
    }

    .k24-card__body {
        min-height: 0;
    }
}

/* 2.2.0 — affiliate offers table */
.k24-offers-heading {
    display: flex;
    gap: 16px;
    align-items: flex-end;
    justify-content: space-between;
}

.k24-offers-count {
    display: inline-flex;
    align-items: center;
    min-height: 30px;
    padding: 5px 10px;
    border: 1px solid var(--k24-border);
    border-radius: 999px;
    background: var(--k24-soft);
    color: var(--k24-muted);
    font-size: 12px;
    font-weight: 800;
    white-space: nowrap;
}

.k24-offers-intro {
    max-width: 820px;
    margin: -8px 0 18px;
    color: var(--k24-muted);
    font-size: 14px;
}

.k24-offers-list {
    display: grid;
    gap: 10px;
}

.k24-offer-row {
    position: relative;
    display: grid;
    grid-template-columns: minmax(170px, 1.35fr) minmax(100px, .72fr) minmax(115px, .8fr) minmax(140px, .9fr) auto;
    gap: 14px;
    align-items: center;
    padding: 16px;
    border: 1px solid var(--k24-border);
    border-radius: 15px;
    background: #fff;
}

.k24-offer-row.is-best {
    border-color: #e4c400;
    box-shadow: 0 8px 24px rgba(16, 24, 40, .06);
}

.k24-offer-merchant,
.k24-offer-cell {
    min-width: 0;
}

.k24-offer-merchant > strong,
.k24-offer-cell > span,
.k24-offer-cell > strong,
.k24-offer-cell > small {
    display: block;
}

.k24-offer-merchant > strong {
    color: var(--k24-text);
    font-size: 15px;
    line-height: 1.25;
}

.k24-offer-availability {
    display: block;
    margin-top: 3px;
    color: #027a48;
    font-size: 12px;
    font-weight: 700;
}

.k24-offer-availability--preorder,
.k24-offer-availability--backorder {
    color: #9a6700;
}

.k24-offer-best-badge {
    display: inline-flex;
    margin-top: 7px;
    padding: 3px 7px;
    border-radius: 999px;
    background: #fff6b3;
    color: #5f4b00;
    font-size: 10px;
    font-weight: 900;
    letter-spacing: .03em;
    text-transform: uppercase;
}

.k24-offer-cell > span {
    margin-bottom: 2px;
    color: var(--k24-muted);
    font-size: 11px;
}

.k24-offer-cell > strong {
    color: var(--k24-text);
    font-size: 14px;
    line-height: 1.3;
}

.k24-offer-total > strong {
    font-size: 17px;
}

.k24-offer-total > small {
    margin-top: 2px;
    color: var(--k24-muted);
    font-size: 10px;
    line-height: 1.3;
}

.k24-offer-action {
    display: flex;
    justify-content: flex-end;
}

.k24-offer-coupon {
    grid-column: 1 / -1;
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
    align-items: center;
    margin-top: -4px;
    padding-top: 10px;
    border-top: 1px dashed var(--k24-border);
    color: #475467;
    font-size: 12px;
}

.k24-offer-coupon strong {
    color: var(--k24-text);
}

.k24-affiliate-disclosure {
    margin: 14px 0 0;
    color: var(--k24-muted);
    font-size: 11px;
    line-height: 1.45;
}

@media (max-width: 900px) {
    .k24-offer-row {
        grid-template-columns: minmax(160px, 1.2fr) repeat(3, minmax(95px, .8fr));
    }

    .k24-offer-action {
        grid-column: 1 / -1;
        justify-content: stretch;
    }

    .k24-offer-action .k24-button {
        width: 100%;
    }
}

@media (max-width: 620px) {
    .k24-offers-heading {
        align-items: flex-start;
        flex-direction: column;
        gap: 8px;
    }

    .k24-offer-row {
        grid-template-columns: repeat(2, minmax(0, 1fr));
        gap: 12px;
    }

    .k24-offer-merchant,
    .k24-offer-action,
    .k24-offer-coupon {
        grid-column: 1 / -1;
    }

    .k24-offer-total {
        grid-column: 1 / -1;
        padding-top: 9px;
        border-top: 1px solid var(--k24-border);
    }
}

/* 2.4.0 — Price History + Deal Score */
.k24-deal-pill {
    display: inline-flex;
    width: fit-content;
    margin-top: 7px;
    padding: 5px 9px;
    border-radius: 999px;
    font-size: 11px;
    font-weight: 900;
}

.k24-deal-pill--great,
.k24-deal-pill--good {
    background: #ecfdf3;
    color: #027a48;
}

.k24-deal-pill--typical {
    background: #f2f4f7;
    color: #475467;
}

.k24-deal-pill--high {
    background: #fff4ed;
    color: #b42318;
}

.k24-price-history__heading {
    display: flex;
    align-items: flex-end;
    justify-content: space-between;
    gap: 18px;
}

.k24-deal-score {
    display: grid;
    justify-items: end;
    gap: 2px;
    color: var(--k24-muted);
    font-size: 11px;
    white-space: nowrap;
}

.k24-deal-score strong {
    color: var(--k24-text);
    font-size: 22px;
    line-height: 1;
}

.k24-price-stats {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 10px;
    margin-top: 18px;
}

.k24-price-stat {
    display: grid;
    gap: 4px;
    min-height: 82px;
    padding: 14px 16px;
    border: 1px solid var(--k24-border);
    border-radius: 14px;
    background: var(--k24-soft);
}

.k24-price-stat span {
    color: var(--k24-muted);
    font-size: 11px;
}

.k24-price-stat strong {
    color: var(--k24-text);
    font-size: clamp(17px, 2vw, 22px);
    line-height: 1.2;
}

.k24-price-chart {
    position: relative;
    margin-top: 18px;
    padding: 10px 8px 6px 58px;
    border: 1px solid var(--k24-border);
    border-radius: 14px;
    background: #fff;
}

.k24-price-chart svg {
    display: block;
    width: 100%;
    height: 170px;
    overflow: visible;
}

.k24-price-chart__grid {
    stroke: #e4e7ec;
    stroke-width: 1;
    vector-effect: non-scaling-stroke;
}

.k24-price-chart__line {
    fill: none;
    stroke: #101828;
    stroke-width: 3;
    stroke-linecap: round;
    stroke-linejoin: round;
    vector-effect: non-scaling-stroke;
}

.k24-price-chart__scale {
    position: absolute;
    top: 20px;
    bottom: 30px;
    left: 12px;
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    color: var(--k24-muted);
    font-size: 10px;
}

.k24-price-chart__dates {
    display: flex;
    justify-content: space-between;
    gap: 12px;
    color: var(--k24-muted);
    font-size: 10px;
}

.k24-price-history__collecting,
.k24-price-history__note {
    margin: 16px 0 0;
    padding: 12px 14px;
    border-radius: 12px;
    background: var(--k24-soft);
    color: var(--k24-muted);
    font-size: 12px;
    line-height: 1.55;
}

@media (max-width: 760px) {
    .k24-price-stats {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .k24-price-history__heading {
        align-items: flex-start;
        flex-direction: column;
    }

    .k24-deal-score {
        justify-items: start;
    }
}

@media (max-width: 460px) {
    .k24-price-stats {
        grid-template-columns: 1fr;
    }

    .k24-price-chart {
        padding-left: 0;
    }

    .k24-price-chart__scale {
        display: none;
    }
}

/* 2.5 Smart Collections / deals hub */
.k24-deals-page .wp-site-blocks > main,
.k24-deals-page main.wp-block-group,
.k24-deals-page .wp-block-post-content {
    max-width: none !important;
}

.k24-deals-shell {
    width: min(1240px, calc(100vw - 32px));
    margin: 28px auto 72px;
}

.k24-deals-hero {
    display: grid;
    grid-template-columns: minmax(0, 1fr) minmax(260px, 360px);
    gap: 36px;
    align-items: center;
    padding: 42px 48px;
    margin: 14px 0 18px;
    border: 1px solid var(--k24-border);
    border-radius: 24px;
    background: linear-gradient(135deg, #fff 0%, #f7f9fc 100%);
    box-shadow: 0 16px 42px rgba(16,24,40,.05);
}

.k24-deals-hero h1 {
    margin: 4px 0 14px;
    font-size: clamp(36px, 4vw, 58px);
    line-height: .98;
    letter-spacing: -.045em;
}

.k24-deals-hero p:not(.k24-set-eyebrow) {
    max-width: 760px;
    margin: 0;
    color: var(--k24-muted);
    font-size: 17px;
    line-height: 1.65;
}

.k24-deals-hero__stats {
    display: grid;
    grid-template-columns: repeat(2, minmax(0,1fr));
    gap: 12px;
}

.k24-deals-hero__stats > div {
    display: grid;
    gap: 6px;
    padding: 20px;
    border: 1px solid var(--k24-border);
    border-radius: 18px;
    background: #fff;
}

.k24-deals-hero__stats span { color: var(--k24-muted); font-size: 12px; }
.k24-deals-hero__stats strong { font-size: 30px; letter-spacing: -.03em; }

.k24-deals-filters {
    display: grid;
    grid-template-columns: repeat(3, minmax(0,1fr)) auto;
    gap: 12px;
    align-items: end;
    padding: 16px;
    margin-bottom: 20px;
    border: 1px solid var(--k24-border);
    border-radius: 18px;
    background: #fff;
}

.k24-deals-filters label { display: grid; gap: 7px; }
.k24-deals-filters label > span { font-size: 12px; font-weight: 700; color: var(--k24-ink); }
.k24-deals-filters select {
    min-height: 44px;
    width: 100%;
    padding: 0 12px;
    border: 1px solid #d0d5dd;
    border-radius: 10px;
    background: #fff;
    color: var(--k24-ink);
}

.k24-deals-history-note {
    display: flex;
    gap: 12px;
    align-items: baseline;
    padding: 13px 16px;
    margin: 0 0 18px;
    border-radius: 12px;
    background: #f8fafc;
    color: var(--k24-muted);
    font-size: 13px;
}
.k24-deals-history-note strong { color: var(--k24-ink); white-space: nowrap; }

.k24-deal-grid {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 16px;
}

.k24-deal-card {
    display: flex;
    flex-direction: column;
    min-width: 0;
    overflow: hidden;
    border: 1px solid var(--k24-border);
    border-radius: 18px;
    background: #fff;
    box-shadow: 0 10px 28px rgba(16,24,40,.04);
}

.k24-deal-card__media {
    position: relative;
    display: flex;
    align-items: center;
    justify-content: center;
    min-height: 235px;
    padding: 18px;
    background: var(--k24-soft);
    text-decoration: none;
}

.k24-deal-card__media .k24-card__image { width: 100%; height: 215px; object-fit: contain; }
.k24-deal-card__media .k24-card__placeholder { min-height: 215px; }

.k24-deal-score {
    position: absolute;
    left: 12px;
    top: 12px;
    z-index: 2;
    padding: 6px 9px;
    border-radius: 999px;
    background: #101828;
    color: #fff;
    font-size: 10px;
    font-weight: 800;
    letter-spacing: .02em;
}
.k24-deal-score--great { background: #067647; }
.k24-deal-score--good { background: #1570ef; }
.k24-deal-score--typical { background: #344054; }
.k24-deal-score--high { background: #b42318; }

.k24-deal-card__body {
    display: flex;
    flex: 1;
    flex-direction: column;
    padding: 16px;
}

.k24-deal-card__title {
    margin: 8px 0 10px;
    min-height: 2.6em;
    font-size: 17px;
    line-height: 1.3;
    letter-spacing: -.02em;
}
.k24-deal-card__title a { color: var(--k24-ink); text-decoration: none; }
.k24-deal-card__title a:hover { text-decoration: underline; }

.k24-deal-card__facts {
    display: flex;
    flex-wrap: wrap;
    gap: 6px 10px;
    min-height: 22px;
    color: var(--k24-muted);
    font-size: 11px;
}
.k24-deal-card__facts strong { color: #067647; }

.k24-deal-card__price {
    display: flex;
    align-items: baseline;
    gap: 6px;
    margin-top: 16px;
}
.k24-deal-card__price span { color: var(--k24-muted); font-size: 12px; }
.k24-deal-card__price strong { font-size: 26px; line-height: 1; letter-spacing: -.035em; }
.k24-deal-card__merchant { margin-top: 6px; color: var(--k24-muted); font-size: 11px; }

.k24-deal-card__actions {
    display: grid;
    grid-template-columns: .8fr 1.2fr;
    gap: 8px;
    margin-top: auto;
    padding-top: 16px;
}
.k24-deal-card__actions .k24-button { min-height: 42px; padding: 9px 10px; font-size: 12px; text-align: center; }

.k24-button--ghost {
    border: 1px solid #d0d5dd;
    background: #fff;
    color: var(--k24-ink);
}

.k24-collection-embed { margin: 28px 0; }
.k24-collection-embed .k24-deal-grid { grid-template-columns: repeat(3,minmax(0,1fr)); }
.k24-collection-empty { padding: 14px 16px; border: 1px dashed #d0d5dd; border-radius: 12px; color: var(--k24-muted); background: #f8fafc; }

@media (max-width: 1080px) {
    .k24-deal-grid { grid-template-columns: repeat(3,minmax(0,1fr)); }
    .k24-deals-hero { grid-template-columns: 1fr; }
    .k24-deals-hero__stats { max-width: 520px; }
}

@media (max-width: 820px) {
    .k24-deal-grid,
    .k24-collection-embed .k24-deal-grid { grid-template-columns: repeat(2,minmax(0,1fr)); }
    .k24-deals-filters { grid-template-columns: repeat(2,minmax(0,1fr)); }
    .k24-deals-filters .k24-button { width: 100%; }
}

@media (max-width: 560px) {
    .k24-deals-shell { width: min(100% - 20px,1240px); margin-top: 14px; }
    .k24-deals-hero { padding: 26px 20px; border-radius: 18px; }
    .k24-deals-hero h1 { font-size: 36px; }
    .k24-deals-hero__stats { grid-template-columns: 1fr 1fr; }
    .k24-deals-hero__stats strong { font-size: 24px; }
    .k24-deals-filters { grid-template-columns: 1fr; }
    .k24-deals-history-note { align-items: flex-start; flex-direction: column; }
    .k24-deal-grid,
    .k24-collection-embed .k24-deal-grid { grid-template-columns: 1fr; }
    .k24-deal-card__media { min-height: 250px; }
    .k24-deal-card__media .k24-card__image { height: 230px; }
}


/* 2.7 Buying Guides / editorial collection pages */
.k24-collection-editorial .wp-block-post-content > .k24-collection-embed,
.k24-collection-editorial .entry-content > .k24-collection-embed {
    width: min(1180px, calc(100vw - 32px));
    max-width: none;
    margin-left: 50%;
    transform: translateX(-50%);
}
.k24-collection-editorial .k24-collection-embed { margin-top: 30px; margin-bottom: 36px; }
@media (max-width: 560px) {
    .k24-collection-editorial .wp-block-post-content > .k24-collection-embed,
    .k24-collection-editorial .entry-content > .k24-collection-embed { width: min(100vw - 20px,1180px); }
}

/* 2.8 durable affiliate merchant links (no fresh-price claims) */
.k24-merchant-links__grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 12px;
}
.k24-merchant-link {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 18px;
    padding: 16px 18px;
    border: 1px solid var(--k24-border);
    border-radius: 16px;
    background: #fff;
}
.k24-merchant-link > div { display: grid; gap: 4px; min-width: 0; }
.k24-merchant-link strong { color: var(--k24-ink); font-size: 15px; }
.k24-merchant-link span { color: var(--k24-muted); font-size: 12px; line-height: 1.45; }
.k24-merchant-link .k24-button { flex: 0 0 auto; white-space: nowrap; }
@media (max-width: 720px) {
    .k24-merchant-links__grid { grid-template-columns: 1fr; }
    .k24-merchant-link { align-items: stretch; flex-direction: column; }
    .k24-merchant-link .k24-button { width: 100%; text-align: center; }
}

/* 3.2 Homepage Engine */
.k24-homepage .wp-block-post-content > .k24-home-shell,
.k24-homepage .entry-content > .k24-home-shell {
    position: relative;
    left: 50%;
    width: min(1280px, calc(100vw - 32px));
    max-width: none !important;
    margin-left: 0 !important;
    margin-right: 0 !important;
    transform: translateX(-50%);
}

.k24-homepage .wp-block-post-content:has(> .k24-home-shell) { margin-block-start: 0 !important; }
.k24-homepage .wp-block-post-title,
.k24-homepage .entry-header > .entry-title { display: none !important; }

.k24-home-shell {
    --k24-home-ink: #101828;
    --k24-home-muted: #667085;
    --k24-home-border: #e4e7ec;
    --k24-home-soft: #f7f9fc;
    --k24-home-yellow: #ffd500;
    --k24-border: var(--k24-home-border);
    --k24-muted: var(--k24-home-muted);
    --k24-text: var(--k24-home-ink);
    --k24-ink: var(--k24-home-ink);
    --k24-soft: var(--k24-home-soft);
    --k24-accent: var(--k24-home-yellow);
    --k24-accent-strong: #f4c900;
    width: min(1280px, calc(100vw - 32px));
    margin: 18px auto 72px;
    color: var(--k24-home-ink);
    font-size: 16px;
    line-height: 1.6;
}
.k24-home-shell *, .k24-home-shell *::before, .k24-home-shell *::after { box-sizing: border-box; }

.k24-home-hero {
    display: grid;
    grid-template-columns: minmax(0, 1.45fr) minmax(300px, .55fr);
    gap: clamp(28px, 5vw, 72px);
    align-items: center;
    overflow: hidden;
    padding: clamp(30px, 5vw, 64px);
    border: 1px solid var(--k24-home-border);
    border-radius: 28px;
    background:
        radial-gradient(circle at 86% 20%, rgba(255,213,0,.22), transparent 25%),
        linear-gradient(135deg, #ffffff 0%, #f7f9fc 100%);
    box-shadow: 0 18px 56px rgba(16,24,40,.06);
}
.k24-home-kicker {
    margin: 0 0 8px;
    color: #475467;
    font-size: 12px;
    font-weight: 850;
    letter-spacing: .09em;
    text-transform: uppercase;
}
.k24-home-hero h1 {
    max-width: 860px;
    margin: 0;
    font-size: clamp(40px, 5.5vw, 72px);
    line-height: .98;
    letter-spacing: -.055em;
    text-wrap: balance;
}
.k24-home-lead {
    max-width: 810px;
    margin: 22px 0 0;
    color: var(--k24-home-muted);
    font-size: clamp(16px, 1.6vw, 19px);
    line-height: 1.7;
}
.k24-home-search { max-width: 820px; margin-top: 28px; }
.k24-home-search > label { display: block; margin-bottom: 7px; font-size: 12px; font-weight: 800; }
.k24-home-search__row { display: grid; grid-template-columns: minmax(0,1fr) auto; gap: 10px; }
.k24-home-search input {
    width: 100%; min-height: 52px; padding: 0 17px;
    border: 1px solid #cfd4dc; border-radius: 13px; background: #fff;
    color: var(--k24-home-ink); font-size: 16px; outline: none;
}
.k24-home-search input:focus { border-color: #98a2b3; box-shadow: 0 0 0 4px rgba(152,162,179,.12); }
.k24-home-search .k24-button { min-height: 52px; padding-inline: 22px; border: 0; cursor: pointer; }
.k24-home-hero__links { display: flex; flex-wrap: wrap; gap: 12px 22px; margin-top: 18px; }
.k24-home-hero__links a { color: #344054; font-size: 13px; font-weight: 750; text-decoration: none; }
.k24-home-hero__links a:hover { text-decoration: underline; text-underline-offset: 3px; }

.k24-home-hero__panel {
    display: grid;
    grid-template-columns: repeat(2,minmax(0,1fr));
    gap: 10px;
}
.k24-home-hero__panel > div {
    min-width: 0; padding: 18px;
    border: 1px solid var(--k24-home-border); border-radius: 18px; background: rgba(255,255,255,.9);
}
.k24-home-hero__panel strong { display: block; font-size: clamp(26px,3vw,38px); line-height: 1; letter-spacing: -.04em; }
.k24-home-hero__panel span { display: block; margin-top: 7px; color: var(--k24-home-muted); font-size: 11px; line-height: 1.35; }

.k24-home-section { margin-top: 48px; }
.k24-home-section__head {
    display: flex; align-items: end; justify-content: space-between; gap: 24px; margin-bottom: 18px;
}
.k24-home-section__head h2,
.k24-home-about h2 { margin: 0; font-size: clamp(28px,3.2vw,42px); line-height: 1.08; letter-spacing: -.035em; }
.k24-home-section__head > a { color: #344054; font-size: 13px; font-weight: 800; text-decoration: none; white-space: nowrap; }
.k24-home-section__head > a:hover { text-decoration: underline; text-underline-offset: 3px; }

.k24-home-series-grid { display: grid; grid-template-columns: repeat(4,minmax(0,1fr)); gap: 12px; }
.k24-home-series-card {
    display: flex; min-height: 146px; flex-direction: column; padding: 20px;
    border: 1px solid var(--k24-home-border); border-radius: 18px;
    background: #fff; color: var(--k24-home-ink); text-decoration: none;
    transition: transform .16s ease, box-shadow .16s ease, border-color .16s ease;
}
.k24-home-series-card:hover { transform: translateY(-2px); border-color: #cfd4dc; box-shadow: 0 12px 26px rgba(16,24,40,.06); }
.k24-home-series-card span { font-size: 18px; font-weight: 850; line-height: 1.2; }
.k24-home-series-card strong { margin-top: 6px; color: var(--k24-home-muted); font-size: 12px; }
.k24-home-series-card em { margin-top: auto; color: #344054; font-size: 12px; font-style: normal; font-weight: 800; }

.k24-home-set-grid { grid-template-columns: repeat(4,minmax(0,1fr)); }
.k24-home-set-grid .k24-card { min-width: 0; }

.k24-home-section--budget {
    padding: clamp(22px,3.5vw,36px); border: 1px solid var(--k24-home-border); border-radius: 24px;
    background: var(--k24-home-soft);
}
.k24-home-budget-grid { display: grid; grid-template-columns: repeat(5,minmax(0,1fr)); gap: 10px; }
.k24-home-budget-grid a {
    display: flex; min-height: 132px; flex-direction: column; padding: 18px;
    border: 1px solid var(--k24-home-border); border-radius: 16px; background: #fff; color: var(--k24-home-ink); text-decoration: none;
}
.k24-home-budget-grid span { color: var(--k24-home-muted); font-size: 11px; font-weight: 700; text-transform: uppercase; letter-spacing: .06em; }
.k24-home-budget-grid strong { margin-top: 2px; font-size: 26px; letter-spacing: -.04em; }
.k24-home-budget-grid em { margin-top: auto; color: #344054; font-size: 11px; font-style: normal; font-weight: 800; }

.k24-home-section .k24-collection-embed { margin: 0; }
.k24-home-section .k24-collection-embed .k24-deal-grid { grid-template-columns: repeat(4,minmax(0,1fr)); }
.k24-home-empty {
    display: grid; gap: 3px; padding: 18px 20px; border: 1px dashed #cfd4dc; border-radius: 16px; background: #f8fafc;
}
.k24-home-empty strong { font-size: 14px; }
.k24-home-empty span { color: var(--k24-home-muted); font-size: 12px; }

.k24-home-guide-grid { display: grid; grid-template-columns: repeat(4,minmax(0,1fr)); gap: 12px; }
.k24-home-guide-grid a {
    display: flex; min-height: 160px; flex-direction: column; padding: 20px;
    border: 1px solid var(--k24-home-border); border-radius: 18px; background: #fff; color: var(--k24-home-ink); text-decoration: none;
}
.k24-home-guide-grid strong { font-size: 18px; line-height: 1.25; }
.k24-home-guide-grid span { margin-top: 8px; color: var(--k24-home-muted); font-size: 12px; }
.k24-home-guide-grid em { margin-top: auto; font-size: 12px; font-style: normal; font-weight: 800; }

.k24-home-about {
    display: grid; grid-template-columns: minmax(280px,.7fr) minmax(0,1.3fr); gap: clamp(30px,5vw,72px);
    margin-top: 52px; padding: clamp(28px,4.5vw,52px); border-radius: 24px; background: #101828; color: #fff;
}
.k24-home-about .k24-home-kicker { color: #98a2b3; }
.k24-home-about__copy { color: #d0d5dd; font-size: 14px; }
.k24-home-about__copy p { margin: 0 0 14px; }
.k24-home-about__copy p:last-child { margin-bottom: 0; }

@media (max-width: 1080px) {
    .k24-home-hero { grid-template-columns: 1fr; }
    .k24-home-hero__panel { max-width: 640px; }
    .k24-home-series-grid, .k24-home-set-grid, .k24-home-section .k24-collection-embed .k24-deal-grid { grid-template-columns: repeat(3,minmax(0,1fr)); }
    .k24-home-budget-grid { grid-template-columns: repeat(3,minmax(0,1fr)); }
    .k24-home-guide-grid { grid-template-columns: repeat(2,minmax(0,1fr)); }
}
@media (max-width: 760px) {
    .k24-homepage .wp-block-post-content > .k24-home-shell,
    .k24-homepage .entry-content > .k24-home-shell,
    .k24-home-shell { width: min(100vw - 20px,1280px); }
    .k24-home-hero { padding: 28px 20px; border-radius: 20px; }
    .k24-home-hero h1 { font-size: clamp(38px,11vw,56px); }
    .k24-home-search__row { grid-template-columns: 1fr; }
    .k24-home-search .k24-button { width: 100%; }
    .k24-home-section__head { align-items: flex-start; flex-direction: column; gap: 8px; }
    .k24-home-series-grid, .k24-home-set-grid, .k24-home-section .k24-collection-embed .k24-deal-grid { grid-template-columns: repeat(2,minmax(0,1fr)); }
    .k24-home-budget-grid { grid-template-columns: repeat(2,minmax(0,1fr)); }
    .k24-home-about { grid-template-columns: 1fr; }
}
@media (max-width: 500px) {
    .k24-home-hero__panel { grid-template-columns: repeat(2,minmax(0,1fr)); }
    .k24-home-series-grid, .k24-home-set-grid, .k24-home-section .k24-collection-embed .k24-deal-grid, .k24-home-guide-grid { grid-template-columns: 1fr; }
    .k24-home-budget-grid { grid-template-columns: 1fr 1fr; }
    .k24-home-budget-grid a { min-height: 116px; padding: 15px; }
}

/* 3.2.1 — Klocki24 homepage shell / theme-independent header + footer */
body.k24-shell-template {
    margin: 0;
    background: #fff;
    color: #101828;
}

body.k24-shell-template .wp-site-blocks,
body.k24-shell-template .wp-block-template-part,
body.k24-shell-template .wp-block-navigation__responsive-container,
body.k24-shell-template .wp-block-navigation__responsive-container-open,
body.k24-shell-template .wp-block-navigation__responsive-container-close {
    display: none !important;
}

.k24-site-header {
    position: sticky;
    top: 0;
    z-index: 1000;
    width: 100%;
    border-bottom: 1px solid #e4e7ec;
    background: rgba(255,255,255,.94);
    box-shadow: 0 1px 0 rgba(16,24,40,.02);
    backdrop-filter: blur(14px);
    -webkit-backdrop-filter: blur(14px);
}
.admin-bar .k24-site-header { top: 32px; }

.k24-site-header__inner {
    display: grid;
    grid-template-columns: auto minmax(0,1fr) minmax(260px,340px);
    gap: 28px;
    align-items: center;
    width: min(1280px, calc(100vw - 40px));
    min-height: 72px;
    margin: 0 auto;
}

.k24-site-brand {
    display: inline-flex;
    gap: 10px;
    align-items: center;
    color: #101828;
    font-size: 22px;
    font-weight: 900;
    letter-spacing: -.04em;
    text-decoration: none;
    white-space: nowrap;
}
.k24-site-brand__mark {
    position: relative;
    display: inline-grid;
    grid-template-columns: repeat(2,8px);
    gap: 4px;
    width: 34px;
    height: 30px;
    place-content: center;
    border: 1px solid #e6bd00;
    border-radius: 8px;
    background: #ffd500;
    box-shadow: inset 0 -3px 0 rgba(0,0,0,.06);
}
.k24-site-brand__mark::before,
.k24-site-brand__mark::after,
.k24-site-brand__mark i {
    content: '';
    display: block;
    width: 8px;
    height: 5px;
    border-radius: 4px 4px 2px 2px;
    background: #fff3a3;
    box-shadow: inset 0 -1px 0 rgba(0,0,0,.12);
}
.k24-site-brand__mark::before { position: absolute; top: 5px; left: 7px; }
.k24-site-brand__mark::after { position: absolute; top: 5px; right: 7px; }
.k24-site-brand__mark i { display: none; }

.k24-site-nav {
    display: flex;
    gap: 6px;
    align-items: center;
    min-width: 0;
}
.k24-site-nav a {
    padding: 9px 10px;
    border-radius: 9px;
    color: #344054;
    font-size: 13px;
    font-weight: 800;
    text-decoration: none;
    white-space: nowrap;
}
.k24-site-nav a:hover { background: #f2f4f7; color: #101828; }

.k24-site-search {
    display: grid;
    grid-template-columns: minmax(0,1fr) auto;
    overflow: hidden;
    border: 1px solid #d0d5dd;
    border-radius: 12px;
    background: #fff;
}
.k24-site-search:focus-within { border-color: #98a2b3; box-shadow: 0 0 0 3px rgba(152,162,179,.12); }
.k24-site-search input {
    min-width: 0;
    min-height: 40px;
    padding: 0 12px;
    border: 0 !important;
    outline: 0 !important;
    background: transparent;
    color: #101828;
    font: inherit;
    font-size: 13px;
    box-shadow: none !important;
}
.k24-site-search button {
    min-height: 40px;
    padding: 0 13px;
    border: 0;
    border-left: 1px solid #e4e7ec;
    background: #ffd500;
    color: #101828;
    font-size: 12px;
    font-weight: 900;
    cursor: pointer;
}
.k24-site-search button:hover { background: #f4c900; }

.k24-site-main { width: 100%; }
.k24-shell-template .k24-home-shell { margin-top: 26px; }
.k24-shell-template .k24-home-hero h1 { font-size: clamp(40px,5vw,64px); line-height: 1.01; }
.k24-shell-template .k24-home-set-grid .k24-card { height: 100%; }

.k24-home-deals-layout { display: grid; gap: 20px; }
.k24-home-section--deals.is-sparse .k24-home-deals-layout {
    grid-template-columns: minmax(280px, .72fr) minmax(320px, 1.28fr);
    align-items: stretch;
}
.k24-home-section--deals.is-sparse .k24-home-deals-results .k24-deal-grid,
.k24-home-section--deals.is-sparse .k24-home-deals-results .k24-collection-grid {
    grid-template-columns: minmax(260px, 1fr) !important;
}
.k24-home-deals-note {
    display: flex;
    min-height: 310px;
    flex-direction: column;
    justify-content: center;
    padding: clamp(24px,4vw,46px);
    border: 1px solid #e4e7ec;
    border-radius: 22px;
    background: linear-gradient(135deg,#fffbea 0%,#f8fafc 72%);
}
.k24-home-deals-note .k24-home-kicker { color: #806800; }
.k24-home-deals-note strong { max-width: 620px; font-size: clamp(22px,2.6vw,34px); line-height: 1.1; letter-spacing: -.03em; }
.k24-home-deals-note p { max-width: 660px; margin: 14px 0 18px; color: #667085; font-size: 14px; line-height: 1.65; }
.k24-home-deals-note a { color: #101828; font-size: 13px; font-weight: 850; text-decoration: none; }
.k24-home-deals-note a:hover { text-decoration: underline; text-underline-offset: 3px; }

.k24-site-footer {
    width: min(1280px, calc(100vw - 40px));
    margin: 74px auto 30px;
    overflow: hidden;
    border-radius: 26px;
    background: #101828;
    color: #fff;
}
.k24-site-footer__inner {
    display: grid;
    grid-template-columns: minmax(0,1.15fr) minmax(360px,.85fr);
    gap: clamp(36px,7vw,90px);
    padding: clamp(34px,5vw,60px);
}
.k24-site-brand--footer { color: #fff; }
.k24-site-footer__brand p { max-width: 560px; margin: 18px 0 12px; color: #d0d5dd; font-size: 15px; line-height: 1.6; }
.k24-site-footer__brand small { display: block; max-width: 620px; color: #98a2b3; font-size: 11px; line-height: 1.55; }
.k24-site-footer__links { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 28px; }
.k24-site-footer__links > div { display: flex; flex-direction: column; align-items: flex-start; }
.k24-site-footer__links strong { margin-bottom: 12px; color: #fff; font-size: 12px; letter-spacing: .06em; text-transform: uppercase; }
.k24-site-footer__links a { padding: 5px 0; color: #d0d5dd; font-size: 14px; text-decoration: none; }
.k24-site-footer__links a:hover { color: #fff; text-decoration: underline; text-underline-offset: 3px; }
.k24-site-footer__bottom {
    display: flex;
    gap: 20px;
    justify-content: space-between;
    padding: 18px clamp(34px,5vw,60px);
    border-top: 1px solid rgba(255,255,255,.09);
    color: #98a2b3;
    font-size: 11px;
}

@media (max-width: 980px) {
    .k24-site-header__inner { grid-template-columns: auto 1fr; gap: 14px 22px; padding: 12px 0; }
    .k24-site-nav { justify-content: flex-end; }
    .k24-site-search { grid-column: 1 / -1; }
    .k24-home-section--deals.is-sparse .k24-home-deals-layout { grid-template-columns: 1fr; }
    .k24-home-deals-note { min-height: 0; }
    .k24-site-footer__inner { grid-template-columns: 1fr; }
}

@media (max-width: 782px) {
    .admin-bar .k24-site-header { top: 46px; }
}

@media (max-width: 680px) {
    .k24-site-header { position: relative; top: auto !important; }
    .k24-site-header__inner { display: flex; width: min(100vw - 24px,1280px); flex-wrap: wrap; }
    .k24-site-brand { font-size: 20px; }
    .k24-site-nav { order: 3; width: 100%; gap: 2px; overflow-x: auto; padding-bottom: 2px; scrollbar-width: none; }
    .k24-site-nav::-webkit-scrollbar { display: none; }
    .k24-site-nav a { padding: 8px 9px; font-size: 12px; }
    .k24-site-search { order: 2; flex: 1 1 210px; min-width: 0; }
    .k24-shell-template .k24-home-shell { margin-top: 14px; }
    .k24-shell-template .k24-home-hero h1 { font-size: clamp(36px,10.5vw,50px); }
    .k24-site-footer { width: min(100vw - 20px,1280px); margin-top: 50px; border-radius: 20px; }
    .k24-site-footer__inner { padding: 30px 22px; }
    .k24-site-footer__links { grid-template-columns: 1fr 1fr; gap: 18px; }
    .k24-site-footer__bottom { flex-direction: column; padding: 16px 22px; }
}

@media (max-width: 420px) {
    .k24-site-header__inner { width: min(100vw - 18px,1280px); }
    .k24-site-search { flex-basis: 100%; order: 4; }
    .k24-site-nav { order: 3; }
    .k24-site-footer__links { grid-template-columns: 1fr; }
}

/* 3.3 — Search UX + Catalog Navigation */
.k24-site-nav a[aria-current="page"] {
    background: #101828;
    color: #fff;
}

.k24-search-enhanced {
    position: relative;
    overflow: visible !important;
}

.k24-search-suggest {
    position: absolute;
    top: calc(100% + 8px);
    left: 0;
    z-index: 1200;
    display: none;
    width: min(620px, calc(100vw - 28px));
    overflow: hidden;
    border: 1px solid #d0d5dd;
    border-radius: 14px;
    background: #fff;
    box-shadow: 0 18px 50px rgba(16,24,40,.16);
}
.k24-search-suggest.is-open { display: block; }
.k24-site-search .k24-search-suggest { right: 0; left: auto; width: min(560px, calc(100vw - 28px)); }
.k24-catalog-filters .k24-search-suggest { top: calc(100% + 10px); width: min(720px, 100%); }
.k24-home-search .k24-search-suggest { width: min(760px, 100%); }

.k24-search-suggest__list { max-height: min(520px, 60vh); overflow-y: auto; }
.k24-search-suggest__item {
    display: grid;
    grid-template-columns: minmax(0,1fr) auto;
    gap: 16px;
    align-items: center;
    padding: 12px 14px;
    border-bottom: 1px solid #eef1f4;
    color: #101828;
    text-decoration: none;
}
.k24-search-suggest__item:hover,
.k24-search-suggest__item.is-active { background: #f8fafc; }
.k24-search-suggest__main { display: grid; min-width: 0; gap: 2px; }
.k24-search-suggest__main strong { color: #667085; font-size: 11px; letter-spacing: .04em; }
.k24-search-suggest__main span { overflow: hidden; font-size: 14px; font-weight: 750; text-overflow: ellipsis; white-space: nowrap; }
.k24-search-suggest__meta { color: #667085; font-size: 11px; text-align: right; white-space: nowrap; }
.k24-search-suggest__all {
    display: block;
    padding: 12px 14px;
    background: #fffbea;
    color: #101828;
    font-size: 12px;
    font-weight: 850;
    text-decoration: none;
}
.k24-search-suggest__all:hover { background: #fff6c4; }
.k24-search-suggest__status {
    position: absolute !important;
    width: 1px !important;
    height: 1px !important;
    overflow: hidden !important;
    clip: rect(1px,1px,1px,1px) !important;
    white-space: nowrap !important;
}

.k24-catalog-shortcuts {
    display: flex;
    gap: 8px;
    align-items: center;
    margin: 16px 0;
    padding: 2px 0 4px;
    overflow-x: auto;
    scrollbar-width: thin;
}
.k24-catalog-shortcuts a {
    display: inline-flex;
    align-items: center;
    min-height: 34px;
    padding: 6px 11px;
    border: 1px solid #e4e7ec;
    border-radius: 999px;
    background: #fff;
    color: #344054;
    font-size: 12px;
    font-weight: 800;
    text-decoration: none;
    white-space: nowrap;
}
.k24-catalog-shortcuts a:hover { border-color: #cfd4dc; background: #f8fafc; }
.k24-catalog-shortcuts a.is-primary { border-color: #e6bd00; background: #ffd500; color: #101828; }

.k24-results-head__actions { display: flex !important; gap: 8px !important; align-items: center !important; }
.k24-results-reset {
    color: #475467 !important;
    font-size: 12px !important;
    font-weight: 800;
    text-decoration: none;
}
.k24-results-reset:hover { color: #101828 !important; text-decoration: underline; text-underline-offset: 3px; }

.k24-shell-template .k24-catalog-page,
.k24-shell-template .k24-set-page,
.k24-shell-template .k24-deals-shell {
    margin-top: 28px;
}

@media (max-width: 680px) {
    .k24-search-suggest { width: calc(100vw - 24px); }
    .k24-site-search .k24-search-suggest { right: auto; left: 0; width: calc(100vw - 24px); }
    .k24-search-suggest__item { grid-template-columns: 1fr; gap: 4px; }
    .k24-search-suggest__meta { text-align: left; white-space: normal; }
    .k24-catalog-shortcuts { margin-inline: 0; }
    .k24-results-head { align-items: flex-start; }
    .k24-results-head__actions { flex-shrink: 0; }
}

/* 3.6.0 — live catalogue internal linking */
.k24-related-sets__heading {
    display: flex;
    align-items: end;
    justify-content: space-between;
    gap: 18px;
}
.k24-related-sets__all {
    flex: 0 0 auto;
    color: var(--k24-text);
    font-size: 14px;
    font-weight: 700;
    text-decoration: none;
}
.k24-related-sets__all:hover { text-decoration: underline; }
.k24-related-grid { margin-top: 4px; }
@media (max-width: 680px) {
    .k24-related-sets__heading { align-items: flex-start; flex-direction: column; gap: 8px; }
}

/* 3.7.0 — Series Landing Quality */
.k24-series-overview,
.k24-series-guide,
.k24-series-highlight {
    margin: 22px 0 28px;
}
.k24-series-overview {
    display: grid;
    grid-template-columns: minmax(0,1.25fr) minmax(320px,.75fr);
    gap: 22px;
    padding: clamp(22px,3vw,34px);
    border: 1px solid var(--k24-border);
    border-radius: 20px;
    background: #fff;
}
.k24-series-overview__copy h2,
.k24-series-guide h2,
.k24-series-highlight h2 {
    margin: 0;
    font-size: clamp(26px,3vw,38px);
    line-height: 1.08;
    letter-spacing: -.035em;
}
.k24-series-overview__copy p:not(.k24-set-section__eyebrow),
.k24-series-guide p {
    margin: 12px 0 0;
    color: #475467;
    line-height: 1.7;
}
.k24-series-facts {
    display: grid;
    grid-template-columns: repeat(2,minmax(0,1fr));
    gap: 10px;
}
.k24-series-facts > div {
    min-width: 0;
    padding: 16px;
    border: 1px solid #e4e7ec;
    border-radius: 14px;
    background: #f8fafc;
}
.k24-series-facts span,
.k24-series-facts strong { display:block; }
.k24-series-facts span { color:#667085; font-size:11px; font-weight:800; text-transform:uppercase; letter-spacing:.05em; }
.k24-series-facts strong { margin-top:5px; font-size:23px; line-height:1.05; letter-spacing:-.03em; }
.k24-series-years,
.k24-series-children { grid-column:1/-1; }
.k24-series-subheading { display:block; margin-bottom:9px; color:#344054; font-size:12px; font-weight:850; text-transform:uppercase; letter-spacing:.05em; }
.k24-series-chip-row { display:flex; flex-wrap:wrap; gap:8px; }
.k24-series-chip-row a,
.k24-series-chip-row > span {
    display:inline-flex; align-items:center; gap:7px; min-height:34px; padding:7px 10px;
    border:1px solid #e4e7ec; border-radius:999px; background:#fff; color:#101828;
    text-decoration:none; font-size:13px; font-weight:800;
}
.k24-series-chip-row a:hover { border-color:#cfd4dc; background:#f8fafc; }
.k24-series-chip-row small { color:#667085; font-size:11px; font-weight:800; }
.k24-series-chip-row--muted > span { background:#f8fafc; }
.k24-series-highlight { padding-top:10px; }
.k24-series-highlight-grid { margin-top:14px; }
.k24-series-guide {
    padding: clamp(22px,3vw,32px);
    border-radius:20px;
    background:#101828;
    color:#fff;
}
.k24-series-guide h2 { color:#fff; }
.k24-series-guide p { color:#d0d5dd; max-width:900px; }
.k24-series-guide__note { font-size:13px; color:#98a2b3 !important; }
@media (max-width: 820px) {
    .k24-series-overview { grid-template-columns:1fr; }
    .k24-series-years,.k24-series-children { grid-column:auto; }
}
@media (max-width: 520px) {
    .k24-series-facts { grid-template-columns:1fr 1fr; }
    .k24-series-highlight-grid { grid-template-columns:1fr 1fr; }
}
@media (max-width: 390px) {
    .k24-series-facts,.k24-series-highlight-grid { grid-template-columns:1fr; }
}

/* 4.0.1 — K24 Expert Lab UI */
.k24-expert {
    position:relative;
    overflow:hidden;
    background:#fff;
    border-color:#d8dee8;
}
.k24-expert::before {
    content:"";
    position:absolute;
    inset:0 auto 0 0;
    width:4px;
    background:var(--k24-accent);
}
.k24-expert__topline {
    display:flex;
    align-items:flex-start;
    justify-content:space-between;
    gap:22px;
    padding-bottom:18px;
    border-bottom:1px solid #eaecf0;
}
.k24-expert__topline h2 { margin:0; }
.k24-expert__lead { max-width:680px; margin:8px 0 0; color:#667085; font-size:13px; line-height:1.55; }
.k24-expert__badges { display:flex; flex-wrap:wrap; justify-content:flex-end; gap:7px; }
.k24-expert-badge {
    display:inline-flex;
    align-items:center;
    min-height:29px;
    padding:5px 9px;
    border:1px solid #e4e7ec;
    border-radius:999px;
    background:#fff;
    color:#475467;
    font-size:11px;
    font-weight:850;
    letter-spacing:.02em;
    text-transform:uppercase;
    white-space:nowrap;
}
.k24-expert-badge--ready { border-color:#abefc6; background:#ecfdf3; color:#067647; }
.k24-expert-badge--provisional { border-color:#fedf89; background:#fffaeb; color:#b54708; }
.k24-expert-labgrid {
    display:grid;
    grid-template-columns:minmax(250px,.78fr) minmax(0,1.55fr);
    gap:18px;
    margin-top:18px;
}
.k24-expert-scoreboard {
    display:flex;
    min-width:0;
    flex-direction:column;
    padding:22px;
    border-radius:16px;
    background:#101828;
    color:#fff;
}
.k24-expert-scoreboard__label {
    color:#d0d5dd;
    font-size:11px;
    font-weight:900;
    letter-spacing:.08em;
    text-transform:uppercase;
}
.k24-expert-scoreboard__value {
    margin-top:8px;
    font-size:clamp(42px,5vw,64px);
    line-height:.95;
    letter-spacing:-.055em;
    font-weight:650;
}
.k24-expert-scoreboard__grade { margin-top:7px; color:#fff; font-size:14px; font-weight:800; }
.k24-expert-scoreboard > p { margin:15px 0 0; color:#cfd4dc; font-size:12px; line-height:1.55; }
.k24-expert-scoreboard__meta {
    display:flex;
    flex-wrap:wrap;
    gap:7px 12px;
    margin-top:auto;
    padding-top:16px;
    color:#98a2b3;
    font-size:10px;
    text-transform:uppercase;
    letter-spacing:.04em;
}
.k24-expert-meter {
    width:100%;
    height:8px;
    margin:10px 0 0;
    overflow:hidden;
    border:0;
    border-radius:999px;
    background:#eef2f6;
    appearance:none;
    -webkit-appearance:none;
}
.k24-expert-meter::-webkit-progress-bar { background:#eef2f6; border-radius:999px; }
.k24-expert-meter::-webkit-progress-value { background:#101828; border-radius:999px; }
.k24-expert-meter::-moz-progress-bar { background:#101828; border-radius:999px; }
.k24-expert-meter--main { height:9px; margin-top:16px; background:#344054; }
.k24-expert-meter--main::-webkit-progress-bar { background:#344054; }
.k24-expert-meter--main::-webkit-progress-value { background:var(--k24-accent); }
.k24-expert-meter--main::-moz-progress-bar { background:var(--k24-accent); }
.k24-expert-meter--empty { display:block; background:repeating-linear-gradient(135deg,#eef2f6 0 7px,#f7f9fb 7px 14px); }
.k24-expert-dimensions {
    display:grid;
    grid-template-columns:1fr 1fr;
    gap:10px;
}
.k24-expert-dimension {
    min-width:0;
    padding:17px 18px;
    border:1px solid #e4e7ec;
    border-radius:14px;
    background:#fbfcfd;
}
.k24-expert-dimension__head { display:flex; align-items:baseline; justify-content:space-between; gap:12px; }
.k24-expert-dimension__head span { color:#475467; font-size:11px; font-weight:850; letter-spacing:.035em; text-transform:uppercase; }
.k24-expert-dimension__head strong { color:#101828; font-size:18px; letter-spacing:-.025em; white-space:nowrap; }
.k24-expert-dimension small { display:block; margin-top:7px; color:#667085; font-size:11px; line-height:1.4; }
.k24-expert-benchmarks {
    display:grid;
    grid-template-columns:repeat(3,minmax(0,1fr));
    gap:10px;
    margin-top:18px;
}
.k24-expert-benchmark {
    min-width:0;
    padding:17px 18px;
    border:1px solid #e4e7ec;
    border-radius:14px;
    background:#fff;
}
.k24-expert-benchmark__eyebrow { margin:0 0 8px; color:#667085; font-size:10px; font-weight:900; letter-spacing:.08em; text-transform:uppercase; }
.k24-expert-benchmark > strong { display:block; color:#101828; font-size:clamp(24px,2.8vw,34px); line-height:1.05; letter-spacing:-.045em; }
.k24-expert-benchmark > strong span { color:#98a2b3; font-size:.55em; font-weight:650; letter-spacing:-.02em; }
.k24-expert-benchmark > p:not(.k24-expert-benchmark__eyebrow) { min-height:35px; margin:8px 0 0; color:#667085; font-size:11px; line-height:1.5; }
.k24-expert-benchmark__foot { display:flex; flex-wrap:wrap; gap:6px; margin-top:12px; }
.k24-expert-benchmark__foot span {
    padding:4px 7px;
    border-radius:999px;
    background:#f2f4f7;
    color:#475467;
    font-size:10px;
    font-weight:800;
}
.k24-expert-signals,
.k24-expert-analysis {
    margin-top:18px;
    padding:18px 20px;
    border-radius:15px;
    background:#f8fafc;
    border:1px solid #eef2f6;
}
.k24-expert-subhead { display:flex; align-items:baseline; justify-content:space-between; gap:16px; margin-bottom:12px; }
.k24-expert-subhead span { color:#101828; font-size:13px; font-weight:900; letter-spacing:.02em; text-transform:uppercase; }
.k24-expert-subhead small { color:#98a2b3; font-size:10px; }
.k24-expert-signals__grid { display:grid; grid-template-columns:repeat(5,minmax(0,1fr)); gap:8px; }
.k24-expert-signal {
    min-width:0;
    padding:12px;
    border:1px solid #e4e7ec;
    border-radius:11px;
    background:#fff;
}
.k24-expert-signal > span,
.k24-expert-signal > strong,
.k24-expert-signal > small { display:block; }
.k24-expert-signal > span { color:#667085; font-size:9px; font-weight:900; letter-spacing:.06em; text-transform:uppercase; }
.k24-expert-signal > strong { margin-top:5px; color:#101828; font-size:14px; line-height:1.25; }
.k24-expert-signal > small { margin-top:5px; color:#98a2b3; font-size:9px; line-height:1.4; }
.k24-expert-signal--strong { border-color:#f8cf00; background:#fffdf2; }
.k24-expert-signal--positive { border-color:#cfe9d9; background:#f7fcf9; }
.k24-expert-signal--watch { border-color:#fedf89; background:#fffbeb; }
.k24-expert-signal--muted { background:#f9fafb; }
.k24-expert-analysis { background:#fff; }
.k24-expert-analysis ol { display:grid; gap:9px; margin:0; padding:0; list-style:none; counter-reset:k24-insight; }
.k24-expert-analysis li {
    position:relative;
    margin:0;
    padding:11px 12px 11px 42px;
    border-left:2px solid #d0d5dd;
    background:#fbfcfd;
    color:#344054;
    line-height:1.6;
    counter-increment:k24-insight;
}
.k24-expert-analysis li::before {
    content:counter(k24-insight);
    position:absolute;
    left:12px;
    top:11px;
    width:20px;
    height:20px;
    display:grid;
    place-items:center;
    border-radius:50%;
    background:#101828;
    color:#fff;
    font-size:10px;
    font-weight:900;
}
.k24-expert-method { margin-top:15px; border-top:1px solid #eaecf0; padding-top:13px; }
.k24-expert-method summary { cursor:pointer; color:#344054; font-size:12px; font-weight:850; }
.k24-expert-method > div { padding:10px 0 0; color:#667085; font-size:11px; line-height:1.65; }
.k24-expert-method p { margin:0 0 7px; }
@media (max-width: 980px) {
    .k24-expert-labgrid { grid-template-columns:1fr; }
    .k24-expert-benchmarks { grid-template-columns:1fr 1fr; }
    .k24-expert-signals__grid { grid-template-columns:repeat(3,minmax(0,1fr)); }
}
@media (max-width: 720px) {
    .k24-expert__topline { flex-direction:column; }
    .k24-expert__badges { justify-content:flex-start; }
    .k24-expert-dimensions { grid-template-columns:1fr; }
    .k24-expert-benchmarks { grid-template-columns:1fr; }
    .k24-expert-signals__grid { grid-template-columns:1fr 1fr; }
    .k24-expert-subhead { align-items:flex-start; flex-direction:column; gap:4px; }
}
@media (max-width: 460px) {
    .k24-expert-scoreboard { padding:18px; }
    .k24-expert-signals__grid { grid-template-columns:1fr; }
    .k24-expert-signals,.k24-expert-analysis { padding:15px; }
}


/* 4.1 Expert Signals v2 */
.k24-expert-benchmarks {
    grid-template-columns:repeat(4,minmax(0,1fr));
}
.k24-expert-model {
    margin-top:18px;
    padding:18px 20px;
    border:1px solid #e4e7ec;
    border-radius:15px;
    background:linear-gradient(180deg,#fff 0%,#fbfcfd 100%);
}
.k24-expert-model__grid {
    display:grid;
    grid-template-columns:repeat(5,minmax(0,1fr));
    gap:8px;
}
.k24-expert-model__row {
    min-width:0;
    padding:12px;
    border:1px solid #eaecf0;
    border-radius:11px;
    background:#fff;
}
.k24-expert-model__row > div {
    display:flex;
    align-items:baseline;
    justify-content:space-between;
    gap:10px;
}
.k24-expert-model__row span {
    color:#667085;
    font-size:9px;
    font-weight:900;
    letter-spacing:.06em;
    text-transform:uppercase;
}
.k24-expert-model__row strong {
    color:#101828;
    font-size:13px;
    white-space:nowrap;
}
.k24-expert-model__row .k24-expert-meter { margin-top:9px; }
.k24-expert-model__summary {
    display:flex;
    flex-wrap:wrap;
    gap:8px 18px;
    margin-top:12px;
    padding-top:12px;
    border-top:1px solid #eef2f6;
    color:#475467;
    font-size:11px;
}
.k24-expert-gaps {
    margin:10px 0 0;
    color:#667085;
    font-size:10px;
    line-height:1.55;
}
@media (max-width: 1120px) {
    .k24-expert-benchmarks { grid-template-columns:1fr 1fr; }
    .k24-expert-model__grid { grid-template-columns:repeat(3,minmax(0,1fr)); }
}
@media (max-width: 720px) {
    .k24-expert-model__grid { grid-template-columns:1fr 1fr; }
}
@media (max-width: 460px) {
    .k24-expert-model__grid { grid-template-columns:1fr; }
}

/* 6.3 — Rankings 2.0 */
.k24-rankings{max-width:1280px;margin:0 auto;padding:38px 28px 72px;color:#172033}
.k24-ranking-breadcrumb{display:flex;gap:9px;align-items:center;margin:0 0 18px;font-size:13px;color:#667085}
.k24-ranking-breadcrumb a{color:#172033;text-decoration:none;font-weight:750}
.k24-ranking-hero{--k24-rank-accent:#2563eb;display:grid;grid-template-columns:minmax(0,1fr) 190px;gap:42px;align-items:end;padding:38px 40px;border:1px solid #dfe4ec;border-top:4px solid var(--k24-rank-accent);border-radius:22px;background:#fff;box-shadow:0 10px 30px rgba(15,23,42,.045);margin-bottom:22px}
.k24-ranking-hero--hub{--k24-rank-accent:#ffd500;background:linear-gradient(135deg,#fff 0%,#fafbfc 100%)}
.k24-ranking-hero--unique{--k24-rank-accent:#7c3aed;background:linear-gradient(135deg,#fff 0%,#faf7ff 100%)}
.k24-ranking-hero--rare{--k24-rank-accent:#be185d;background:linear-gradient(135deg,#fff 0%,#fff7fb 100%)}
.k24-ranking-hero--minifigs{--k24-rank-accent:#c2410c;background:linear-gradient(135deg,#fff 0%,#fff9f4 100%)}
.k24-ranking-hero--scale{--k24-rank-accent:#2563eb;background:linear-gradient(135deg,#fff 0%,#f6f9ff 100%)}
.k24-ranking-hero--parts{--k24-rank-accent:#0f766e;background:linear-gradient(135deg,#fff 0%,#f4fbfa 100%)}
.k24-ranking-hero--rareparts{--k24-rank-accent:#b45309;background:linear-gradient(135deg,#fff 0%,#fffaf0 100%)}
.k24-ranking-hero--colors{--k24-rank-accent:#0891b2;background:linear-gradient(135deg,#fff 0%,#f2fbfd 100%)}
.k24-ranking-eyebrow{margin:0 0 11px;font-size:12px;letter-spacing:.08em;font-weight:900;text-transform:uppercase;color:var(--k24-rank-accent,#475467)}
.k24-ranking-hero h1{font-size:clamp(34px,4vw,58px);line-height:1;letter-spacing:-.042em;margin:0 0 17px;max-width:940px}
.k24-ranking-hero p:not(.k24-ranking-eyebrow){font-size:17px;line-height:1.62;color:#596579;max-width:860px;margin:0}
.k24-ranking-hero__stat{border-left:1px solid #d9dfe8;padding-left:28px;min-height:104px;display:flex;flex-direction:column;justify-content:flex-end}
.k24-ranking-hero__stat strong{font-size:48px;line-height:1;letter-spacing:-.05em;color:var(--k24-rank-accent,#172033)}
.k24-ranking-hero__stat span{font-size:12px;color:#667085;margin-top:8px;line-height:1.4}
.k24-ranking-hubgrid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:17px}
.k24-ranking-hubcard{--k24-rank-accent:#2563eb;border:1px solid #e1e6ee;border-top:4px solid var(--k24-rank-accent);border-radius:18px;padding:23px;background:#fff;min-height:330px;display:flex;flex-direction:column;box-shadow:0 5px 18px rgba(15,23,42,.035)}
.k24-ranking-hubcard--unique{--k24-rank-accent:#7c3aed}.k24-ranking-hubcard--rare{--k24-rank-accent:#be185d}.k24-ranking-hubcard--minifigs{--k24-rank-accent:#c2410c}.k24-ranking-hubcard--scale{--k24-rank-accent:#2563eb}.k24-ranking-hubcard--parts{--k24-rank-accent:#0f766e}.k24-ranking-hubcard--rareparts{--k24-rank-accent:#b45309}.k24-ranking-hubcard--colors{--k24-rank-accent:#0891b2}
.k24-ranking-hubcard__top{font-size:11px;font-weight:900;letter-spacing:.06em;text-transform:uppercase;color:var(--k24-rank-accent)}
.k24-ranking-hubcard h2{font-size:27px;line-height:1.08;letter-spacing:-.03em;margin:15px 0 10px}
.k24-ranking-hubcard p{margin:0;color:#667085;line-height:1.58;font-size:14px}
.k24-ranking-hubcard__leader{margin:20px 0 0;padding:13px 14px;border:1px solid #e7eaf0;border-radius:12px;background:#fafbfc;display:grid;gap:3px}
.k24-ranking-hubcard__leader small{font-size:10px;text-transform:uppercase;letter-spacing:.05em;color:#98a2b3;font-weight:850}
.k24-ranking-hubcard__leader strong{font-size:14px;line-height:1.25;color:#172033}
.k24-ranking-hubcard__leader span{font-size:12px;color:var(--k24-rank-accent);font-weight:850}
.k24-ranking-hubcard__foot{margin-top:auto;padding-top:18px;display:flex;align-items:end;justify-content:space-between;gap:18px}
.k24-ranking-hubcard__foot span{font-size:11px;color:#667085}.k24-ranking-hubcard__foot span strong{display:block;color:#172033;font-size:22px}.k24-ranking-hubcard__foot a{font-weight:850;color:#172033;text-decoration:none;font-size:12px;white-space:nowrap}
.k24-ranking-empty{padding:22px;border:1px solid #e3e7ed;background:#fafbfc;border-radius:14px;margin:18px 0}.k24-ranking-empty strong{font-size:18px}.k24-ranking-empty p{margin:7px 0 0;color:#667085;line-height:1.6}
.k24-ranking-filters{display:grid;grid-template-columns:minmax(190px,1fr) minmax(155px,.7fr) auto auto;gap:12px;align-items:end;border:1px solid #e2e7ee;border-radius:14px;padding:14px;margin:18px 0 24px;background:#fff}
.k24-ranking-filters label{font-size:11px;font-weight:850;color:#667085;text-transform:uppercase;letter-spacing:.04em}.k24-ranking-filters select{display:block;width:100%;margin-top:7px;padding:11px 12px;border:1px solid #d0d5dd;border-radius:9px;background:#fff;color:#172033;min-height:44px}.k24-ranking-filters button{border:0;border-radius:9px;background:#ffd500;color:#172033;padding:12px 20px;font-weight:900;cursor:pointer;min-height:44px}.k24-ranking-filters>a{padding:12px 4px;color:#475467;text-decoration:none;font-size:13px;font-weight:750}
.k24-ranking-table{border-top:1px solid #e2e7ee}.k24-ranking-row{display:grid;grid-template-columns:64px 148px minmax(0,1fr) 188px 122px;gap:18px;align-items:center;padding:18px 0;border-bottom:1px solid #e8ecf2}
.k24-ranking-row__rank{display:flex;align-items:baseline;gap:2px;color:#98a2b3}.k24-ranking-row__rank span{font-size:13px}.k24-ranking-row__rank strong{font-size:38px;color:#172033;letter-spacing:-.06em}
.k24-ranking-row__image{height:108px;border-radius:12px;background:#f5f6f8;overflow:hidden;display:flex;align-items:center;justify-content:center;padding:8px}.k24-ranking-row__image img{width:100%;height:100%;object-fit:contain}.k24-ranking-placeholder{width:100%;height:100%;display:flex;align-items:center;justify-content:center;color:#98a2b3;font-weight:900;font-size:12px}
.k24-ranking-row__meta{display:flex;flex-wrap:wrap;gap:8px;color:#667085;font-size:11px;font-weight:750}.k24-ranking-row__meta span+span:before{content:"·";margin-right:8px}.k24-ranking-row h2{font-size:20px;line-height:1.18;margin:7px 0 10px;letter-spacing:-.022em}.k24-ranking-row h2 a{color:#172033;text-decoration:none}.k24-ranking-row h2 a:hover{text-decoration:underline;text-underline-offset:3px}
.k24-ranking-row__benchmarks{display:flex;flex-wrap:wrap;gap:6px}.k24-ranking-row__benchmarks span{font-size:10px;padding:5px 7px;border:1px solid #e2e7ee;border-radius:999px;color:#667085;background:#fafbfc}
.k24-ranking-row__metric{--k24-rank-accent:#2563eb;border-left:3px solid var(--k24-rank-accent);padding:10px 0 10px 15px}.k24-ranking-row__metric--unique{--k24-rank-accent:#7c3aed}.k24-ranking-row__metric--rare{--k24-rank-accent:#be185d}.k24-ranking-row__metric--minifigs{--k24-rank-accent:#c2410c}.k24-ranking-row__metric--scale{--k24-rank-accent:#2563eb}.k24-ranking-row__metric--parts{--k24-rank-accent:#0f766e}.k24-ranking-row__metric--rareparts{--k24-rank-accent:#b45309}.k24-ranking-row__metric--colors{--k24-rank-accent:#0891b2}.k24-ranking-row__metric strong{display:block;font-size:31px;line-height:1;color:var(--k24-rank-accent);letter-spacing:-.04em}.k24-ranking-row__metric span,.k24-ranking-row__metric small{display:block;margin-top:5px;font-size:11px;color:#667085;line-height:1.35}.k24-ranking-row__metric span{font-weight:750;color:#475467}
.k24-ranking-row__cta{text-decoration:none;color:#172033;font-size:12px;font-weight:850;text-align:right}.k24-ranking-row__cta:hover{text-decoration:underline;text-underline-offset:3px}
@media(max-width:1120px){.k24-ranking-hubgrid{grid-template-columns:repeat(2,minmax(0,1fr))}.k24-ranking-row{grid-template-columns:52px 120px minmax(0,1fr) 165px}.k24-ranking-row__cta{display:none}}
@media(max-width:820px){.k24-ranking-hero{grid-template-columns:1fr}.k24-ranking-hero__stat{border-left:0;border-top:1px solid #d9dfe8;padding:18px 0 0;min-height:0}.k24-ranking-filters{grid-template-columns:1fr 1fr auto}.k24-ranking-row{grid-template-columns:48px 100px minmax(0,1fr);gap:12px}.k24-ranking-row__metric{grid-column:3}.k24-ranking-row__image{height:86px}}
@media(max-width:680px){.k24-rankings{padding:24px 16px 50px}.k24-ranking-hero{padding:25px 20px;border-radius:17px}.k24-ranking-hero h1{font-size:36px}.k24-ranking-hubgrid{grid-template-columns:1fr}.k24-ranking-hubcard{min-height:0}.k24-ranking-filters{grid-template-columns:1fr}.k24-ranking-row{grid-template-columns:40px 78px minmax(0,1fr);gap:9px}.k24-ranking-row__image{height:74px;padding:5px}.k24-ranking-row__metric{grid-column:3;padding:7px 0 7px 11px}.k24-ranking-row__metric strong{font-size:26px}.k24-ranking-row__benchmarks{display:none}.k24-ranking-row h2{font-size:16px}.k24-ranking-hubcard h2{font-size:25px}.k24-ranking-hubcard__foot{align-items:center}.k24-ranking-hubcard__leader{margin-top:16px}}

/* 4.3.0 — Expert Commerce Intelligence */
.k24-commerce-lab {
    position: relative;
    overflow: hidden;
    border: 1px solid #dfe4ea;
    background:
        linear-gradient(180deg, rgba(248,250,252,.94), rgba(255,255,255,.98));
}
.k24-commerce-lab::before {
    content: "";
    position: absolute;
    inset: 0 auto 0 0;
    width: 4px;
    background: #98a2b3;
}
.k24-commerce-lab--strong::before { background: var(--k24-accent); }
.k24-commerce-lab--positive::before { background: #12b76a; }
.k24-commerce-lab--watch::before { background: #f79009; }
.k24-commerce-lab__header {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: 24px;
    margin-bottom: 18px;
}
.k24-commerce-lab__header h2 { margin: 0; }
.k24-commerce-lab__header > div:first-child > p:last-child {
    max-width: 760px;
    margin: 8px 0 0;
    color: #667085;
    font-size: 13px;
    line-height: 1.55;
}
.k24-commerce-lab__state {
    display: flex;
    flex-wrap: wrap;
    justify-content: flex-end;
    gap: 7px;
}
.k24-commerce-lab__state span,
.k24-commerce-lab__state strong {
    display: inline-flex;
    align-items: center;
    min-height: 30px;
    padding: 5px 10px;
    border: 1px solid #dfe4ea;
    border-radius: 999px;
    background: #fff;
    color: #344054;
    font-size: 10px;
    font-weight: 900;
    letter-spacing: .045em;
    text-transform: uppercase;
    white-space: nowrap;
}
.k24-commerce-lab__decision {
    display: grid;
    grid-template-columns: minmax(280px,.9fr) minmax(0,1.65fr);
    gap: 12px;
}
.k24-commerce-verdict {
    min-height: 220px;
    padding: 22px;
    border-radius: 17px;
    background: #101828;
    color: #fff;
}
.k24-commerce-verdict > span {
    display: block;
    color: #98a2b3;
    font-size: 10px;
    font-weight: 900;
    letter-spacing: .08em;
    text-transform: uppercase;
}
.k24-commerce-verdict > strong {
    display: block;
    max-width: 390px;
    margin-top: 11px;
    color: #fff;
    font-size: clamp(25px,3vw,37px);
    line-height: 1.04;
    letter-spacing: -.045em;
}
.k24-commerce-verdict > p {
    margin: 12px 0 0;
    color: #d0d5dd;
    font-size: 12px;
    line-height: 1.55;
}
.k24-commerce-verdict__meter {
    height: 8px;
    margin-top: 22px;
    overflow: hidden;
    border-radius: 999px;
    background: #344054;
}
.k24-commerce-verdict__meter i {
    display: block;
    height: 100%;
    border-radius: inherit;
    background: var(--k24-accent);
}
.k24-commerce-verdict--positive .k24-commerce-verdict__meter i { background: #32d583; }
.k24-commerce-verdict--watch .k24-commerce-verdict__meter i { background: #fdb022; }
.k24-commerce-verdict > small {
    display: block;
    margin-top: 8px;
    color: #98a2b3;
    font-size: 10px;
    font-weight: 800;
}
.k24-commerce-lab__kpis {
    display: grid;
    grid-template-columns: repeat(2,minmax(0,1fr));
    gap: 9px;
}
.k24-commerce-lab__kpis > div {
    min-width: 0;
    padding: 18px;
    border: 1px solid #e4e7ec;
    border-radius: 15px;
    background: #fff;
}
.k24-commerce-lab__kpis span,
.k24-commerce-lab__kpis strong,
.k24-commerce-lab__kpis small { display: block; }
.k24-commerce-lab__kpis span {
    color: #667085;
    font-size: 9px;
    font-weight: 900;
    letter-spacing: .07em;
    text-transform: uppercase;
}
.k24-commerce-lab__kpis strong {
    margin-top: 8px;
    color: #101828;
    font-size: clamp(22px,2.5vw,31px);
    line-height: 1;
    letter-spacing: -.035em;
}
.k24-commerce-lab__kpis small {
    margin-top: 7px;
    color: #98a2b3;
    font-size: 10px;
    line-height: 1.4;
}
.k24-commerce-lab__evidence,
.k24-commerce-alternatives {
    margin-top: 14px;
    padding: 16px;
    border: 1px solid #e4e7ec;
    border-radius: 15px;
    background: #fff;
}
.k24-commerce-evidence-grid {
    display: grid;
    grid-template-columns: repeat(4,minmax(0,1fr));
    gap: 8px;
}
.k24-commerce-evidence {
    min-width: 0;
    padding: 13px;
    border: 1px solid #eaecf0;
    border-radius: 12px;
    background: #f9fafb;
}
.k24-commerce-evidence > span,
.k24-commerce-evidence > strong,
.k24-commerce-evidence > small { display: block; }
.k24-commerce-evidence > span {
    color: #667085;
    font-size: 9px;
    font-weight: 900;
    letter-spacing: .06em;
    text-transform: uppercase;
}
.k24-commerce-evidence > strong {
    margin-top: 6px;
    color: #101828;
    font-size: 18px;
    letter-spacing: -.025em;
}
.k24-commerce-evidence > small {
    margin-top: 5px;
    color: #98a2b3;
    font-size: 9px;
    line-height: 1.4;
}
.k24-commerce-evidence--positive { border-color: #abefc6; background: #f6fef9; }
.k24-commerce-evidence--watch { border-color: #fedf89; background: #fffcf5; }
.k24-commerce-evidence--muted { background: #fcfcfd; }
.k24-commerce-lab__cta {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 18px;
    margin-top: 14px;
    padding: 15px 16px;
    border: 1px solid #f3d000;
    border-radius: 15px;
    background: #fffdf0;
}
.k24-commerce-lab__cta strong,
.k24-commerce-lab__cta span { display: block; }
.k24-commerce-lab__cta strong { color:#101828; font-size:22px; letter-spacing:-.035em; }
.k24-commerce-lab__cta span { margin-top:2px; color:#667085; font-size:11px; }
.k24-commerce-alternatives__grid {
    display: grid;
    grid-template-columns: repeat(3,minmax(0,1fr));
    gap: 9px;
}
.k24-commerce-alt {
    display: flex;
    flex-direction: column;
    min-width: 0;
    padding: 15px;
    border: 1px solid #e4e7ec;
    border-radius: 13px;
    background: #fbfcfd;
}
.k24-commerce-alt__meta {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    justify-content: space-between;
    gap: 6px;
    color: #667085;
    font-size: 9px;
    font-weight: 850;
    letter-spacing: .04em;
    text-transform: uppercase;
}
.k24-commerce-alt__meta em {
    padding: 3px 6px;
    border-radius: 999px;
    background: #fff4b8;
    color: #665500;
    font-style: normal;
}
.k24-commerce-alt h3 { margin: 9px 0 0; font-size: 15px; line-height:1.25; }
.k24-commerce-alt h3 a { color:#101828; text-decoration:none; }
.k24-commerce-alt__price { margin-top: 13px; }
.k24-commerce-alt__price strong { display:block; color:#101828; font-size:21px; letter-spacing:-.035em; }
.k24-commerce-alt__price span { display:block; margin-top:2px; color:#667085; font-size:10px; }
.k24-commerce-alt__scores { display:flex; flex-wrap:wrap; gap:5px; margin-top:10px; }
.k24-commerce-alt__scores span {
    padding: 4px 6px;
    border: 1px solid #e4e7ec;
    border-radius: 999px;
    background: #fff;
    color: #475467;
    font-size: 9px;
    font-weight: 800;
}
.k24-commerce-alt__actions {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 8px;
    margin-top: auto;
    padding-top: 14px;
}
.k24-commerce-alt__actions > a:first-child { color:#344054; font-size:10px; font-weight:800; }
.k24-commerce-alt__actions .k24-button { min-height:34px; padding:7px 10px; font-size:10px; }
.k24-commerce-lab__disclaimer {
    margin: 12px 0 0;
    color: #98a2b3;
    font-size: 9px;
    line-height: 1.5;
}

@media (max-width: 900px) {
    .k24-commerce-lab__decision { grid-template-columns:1fr; }
    .k24-commerce-evidence-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
    .k24-commerce-alternatives__grid { grid-template-columns:1fr; }
}
@media (max-width: 620px) {
    .k24-commerce-lab__header { flex-direction:column; gap:12px; }
    .k24-commerce-lab__state { justify-content:flex-start; }
    .k24-commerce-lab__kpis,
    .k24-commerce-evidence-grid { grid-template-columns:1fr; }
    .k24-commerce-lab__cta { align-items:stretch; flex-direction:column; }
    .k24-commerce-lab__cta .k24-button { width:100%; }
}

/* 4.5 Compare Lab */
.k24-compare-page{max-width:1320px;margin:0 auto;padding:34px 24px 72px}.k24-compare-hero{border:1px solid #dfe5ee;border-left:4px solid #ffd400;border-radius:22px;padding:34px;background:linear-gradient(135deg,#fff 0%,#f8fafc 100%)}.k24-compare-hero h1{font-size:clamp(34px,4vw,58px);line-height:1.02;letter-spacing:-.045em;margin:6px 0 14px;max-width:900px}.k24-compare-hero>p:not(.k24-set-section__eyebrow){max-width:900px;font-size:18px;line-height:1.65;color:#42506a}.k24-compare-form{display:grid;grid-template-columns:repeat(4,minmax(0,1fr)) auto;gap:10px;align-items:end;margin-top:26px}.k24-compare-form label{display:grid;gap:6px}.k24-compare-form label span{font-size:11px;font-weight:800;text-transform:uppercase;letter-spacing:.04em;color:#5c6980}.k24-compare-form input{width:100%;border:1px solid #cad3df;border-radius:11px;padding:13px 12px;font-size:16px;background:#fff}.k24-compare-form button{border:0;border-radius:11px;background:#ffd400;color:#0f172a;font-weight:900;padding:14px 20px;min-height:49px}.k24-compare-hero small{display:block;margin-top:10px;color:#7a879b}.k24-compare-alert{margin:18px 0;padding:13px 16px;border-radius:12px;background:#fff7db;border:1px solid #f3d55b;color:#584a00}.k24-compare-selected{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;margin:26px 0}.k24-compare-selected__card{border:1px solid #dfe5ee;border-radius:16px;overflow:hidden;background:#fff}.k24-compare-selected__image{display:block;aspect-ratio:4/3;background:#f3f6f9;padding:14px}.k24-compare-selected__image img{width:100%;height:100%;object-fit:contain}.k24-compare-selected__card>div{padding:14px;display:grid;gap:6px}.k24-compare-selected__card span,.k24-compare-selected__card small{font-size:12px;color:#66758c}.k24-compare-selected__card strong{font-size:16px;line-height:1.25}.k24-compare-matrix{margin-top:26px;border:1px solid #dfe5ee;border-radius:20px;background:#fff;overflow:hidden}.k24-compare-heading{display:flex;justify-content:space-between;align-items:end;gap:20px;padding:24px 26px;border-bottom:1px solid #e9edf3}.k24-compare-heading h2{font-size:30px;letter-spacing:-.035em;margin:4px 0 0}.k24-compare-heading>span{font-size:12px;font-weight:800;background:#f2f5f8;border-radius:999px;padding:8px 10px}.k24-compare-table-wrap{overflow-x:auto}.k24-compare-table{width:100%;border-collapse:collapse;min-width:800px}.k24-compare-table th,.k24-compare-table td{padding:15px 16px;border-bottom:1px solid #edf0f4;text-align:left;vertical-align:top}.k24-compare-table thead th{background:#111b2d;color:#fff}.k24-compare-table thead th:first-child{width:190px}.k24-compare-table thead a{color:#fff;text-decoration:none;display:grid;gap:4px}.k24-compare-table thead a span{font-weight:500;font-size:12px;opacity:.75;line-height:1.25}.k24-compare-table tbody th{font-size:12px;text-transform:uppercase;letter-spacing:.035em;color:#5d6a7e;background:#f8fafc}.k24-compare-table td{font-weight:650;position:relative}.k24-compare-table td.is-best{background:#fffbea}.k24-compare-best{display:block;width:max-content;margin-top:5px;font-size:9px;line-height:1;text-transform:uppercase;letter-spacing:.04em;font-weight:900;background:#ffd400;color:#111827;border-radius:999px;padding:4px 6px}.k24-compare-disclaimer{margin:0;padding:15px 26px 20px;color:#6d788b;font-size:12px}.k24-compare-findings{margin-top:22px;border-radius:18px;background:#111b2d;color:#fff;padding:26px}.k24-compare-findings h2{font-size:28px;margin:5px 0 18px}.k24-compare-findings ol{display:grid;gap:10px;margin:0;padding:0;list-style:none;counter-reset:k24c}.k24-compare-findings li{counter-increment:k24c;padding:13px 14px 13px 46px;background:rgba(255,255,255,.06);border-radius:12px;position:relative;line-height:1.5}.k24-compare-findings li:before{content:counter(k24c);position:absolute;left:14px;top:13px;width:22px;height:22px;display:grid;place-items:center;border-radius:50%;background:#ffd400;color:#111827;font-weight:900;font-size:11px}.k24-compare-info{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;margin-top:24px}.k24-compare-info>div{border:1px solid #dfe5ee;border-radius:14px;padding:18px;background:#fff}.k24-compare-info p{color:#677489;line-height:1.5;margin:7px 0 0}.k24-compare-pick{margin-top:24px}.k24-compare-pick h2{font-size:30px;margin:4px 0 16px}.k24-compare-pick__grid{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}.k24-compare-pick__grid a{display:grid;gap:6px;padding:16px;border:1px solid #dfe5ee;border-radius:14px;text-decoration:none;color:#111827;background:#fff}.k24-compare-pick__grid span{color:#718096;font-size:12px}.k24-compare-panel__heading{display:flex;align-items:end;justify-content:space-between;gap:18px}.k24-compare-panel__heading>a{font-size:12px;font-weight:800;text-decoration:none}.k24-compare-panel__lead{color:#657187;margin:-4px 0 16px;max-width:820px}.k24-compare-suggestions{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}.k24-compare-suggestion{border:1px solid #dfe5ee;border-radius:14px;overflow:hidden;background:#fff}.k24-compare-suggestion__image{display:block;aspect-ratio:16/10;background:#f3f6f9;padding:10px}.k24-compare-suggestion__image img{width:100%;height:100%;object-fit:contain}.k24-compare-suggestion__body{padding:12px;display:grid;gap:6px}.k24-compare-suggestion__body>span,.k24-compare-suggestion__body>small{font-size:11px;color:#69778c}.k24-compare-suggestion__body>strong{font-size:14px;line-height:1.3}.k24-compare-suggestion__cta{font-size:11px;font-weight:900;text-decoration:none;margin-top:4px}.k24-compare-template .k24-site-main{min-height:70vh}
@media(max-width:980px){.k24-compare-form{grid-template-columns:repeat(2,1fr)}.k24-compare-form button{grid-column:1/-1}.k24-compare-selected{grid-template-columns:repeat(2,1fr)}.k24-compare-suggestions,.k24-compare-info,.k24-compare-pick__grid{grid-template-columns:1fr 1fr}}@media(max-width:640px){.k24-compare-page{padding:20px 14px 50px}.k24-compare-hero{padding:22px}.k24-compare-form{grid-template-columns:1fr}.k24-compare-selected,.k24-compare-suggestions,.k24-compare-info,.k24-compare-pick__grid{grid-template-columns:1fr}.k24-compare-heading{align-items:flex-start;flex-direction:column}.k24-compare-panel__heading{align-items:flex-start;flex-direction:column}}

/* 4.6 K24 Knowledge Graph */
.k24-knowledge-graph{border-left:4px solid #ffd400}.k24-graph-heading{display:flex;justify-content:space-between;align-items:end;gap:18px}.k24-graph-heading>span{font-size:11px;font-weight:900;text-transform:uppercase;letter-spacing:.04em;padding:7px 9px;border-radius:999px;background:#111b2d;color:#fff}.k24-graph-lead{max-width:980px;color:#5f6d82;line-height:1.65;margin:-2px 0 22px}.k24-graph-block{border:1px solid #dfe5ee;border-radius:17px;background:#fff;overflow:hidden;margin-top:16px}.k24-graph-block__heading{display:flex;justify-content:space-between;gap:16px;align-items:center;padding:15px 18px;border-bottom:1px solid #edf0f4;background:#f8fafc}.k24-graph-block__heading>span{font-size:12px;font-weight:900;text-transform:uppercase;letter-spacing:.04em}.k24-graph-block__heading>small{font-size:11px;color:#7a8799}.k24-graph-timeline{display:grid;grid-template-columns:1fr 1.12fr 1fr;gap:0;position:relative}.k24-graph-timeline:before{content:"";position:absolute;left:15%;right:15%;top:31px;height:2px;background:#d8dee8;z-index:0}.k24-graph-timeline__node{padding:20px 18px;display:grid;gap:7px;position:relative;z-index:1;text-align:center;align-content:start}.k24-graph-timeline__node>span{justify-self:center;font-size:9px;text-transform:uppercase;letter-spacing:.05em;font-weight:900;background:#eef2f7;color:#586579;border-radius:999px;padding:5px 7px}.k24-graph-timeline__node.is-current{background:#fffbea}.k24-graph-timeline__node.is-current>span{background:#ffd400;color:#111827}.k24-graph-timeline__node.is-empty{color:#8b96a7;min-height:170px;place-content:center}.k24-graph-timeline__img{height:110px;display:grid;place-items:center}.k24-graph-timeline__img img{width:100%;height:100%;object-fit:contain}.k24-graph-timeline__node>a{text-decoration:none;color:#111827}.k24-graph-timeline__node strong{font-size:14px;line-height:1.3}.k24-graph-timeline__node small{font-size:10px;color:#748196}.k24-graph-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:0}.k24-graph-card{min-width:0;border-right:1px solid #edf0f4;background:#fff}.k24-graph-card:last-child{border-right:0}.k24-graph-card__image{display:block;aspect-ratio:4/3;background:#f4f7fa;padding:12px}.k24-graph-card__image img{width:100%;height:100%;object-fit:contain}.k24-graph-card__body{padding:12px;display:grid;gap:8px}.k24-graph-card__meta{display:flex;justify-content:space-between;gap:6px;align-items:center}.k24-graph-card__meta span{font-size:10px;color:#6e7b90}.k24-graph-card__meta b{font-size:8px;text-transform:uppercase;letter-spacing:.035em;border-radius:999px;background:#111b2d;color:#fff;padding:4px 5px;white-space:nowrap}.k24-graph-card__title{font-size:13px;font-weight:800;line-height:1.28;color:#111827;text-decoration:none}.k24-graph-card__facts{display:grid;gap:2px;font-size:10px;color:#728096}.k24-graph-card__reasons{display:flex;gap:4px;flex-wrap:wrap}.k24-graph-card__reasons span{font-size:8px;line-height:1.2;padding:4px 5px;border-radius:6px;background:#f0f3f7;color:#5f6d80}.k24-graph-method{font-size:10px;color:#8290a3;margin:14px 2px 0;line-height:1.5}.k24-graph-template-note{font-size:10px;color:#77869a}
@media(max-width:1100px){.k24-graph-grid{grid-template-columns:repeat(3,1fr)}.k24-graph-card:nth-child(3n){border-right:0}.k24-graph-card:nth-child(n+4){border-top:1px solid #edf0f4}}
@media(max-width:720px){.k24-graph-heading,.k24-graph-block__heading{align-items:flex-start;flex-direction:column}.k24-graph-timeline{grid-template-columns:1fr}.k24-graph-timeline:before{display:none}.k24-graph-timeline__node{border-bottom:1px solid #edf0f4}.k24-graph-timeline__node:last-child{border-bottom:0}.k24-graph-grid{grid-template-columns:1fr 1fr}.k24-graph-card{border-bottom:1px solid #edf0f4}.k24-graph-card:nth-child(2n){border-right:0}.k24-graph-card:nth-child(3n){border-right:1px solid #edf0f4}.k24-graph-card:last-child{border-right:0}}
@media(max-width:480px){.k24-graph-grid{grid-template-columns:1fr}.k24-graph-card{border-right:0!important}.k24-graph-timeline__img{height:130px}}

/* 4.7.0 — K24 Design System + Set Hub UX
 * Cel: jeden spójny produkt, czytelna hierarchia danych i ekspercki charakter bez ciężkich animacji.
 */
:root {
    --k24-ui-font: "Segoe UI Variable Text", "Aptos", "Inter", system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
    --k24-display-font: "Segoe UI Variable Display", "Aptos Display", "Inter", system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
    --k24-ink: #0b1424;
    --k24-ink-2: #172033;
    --k24-copy: #344054;
    --k24-muted-2: #697586;
    --k24-line: #dfe5ec;
    --k24-line-soft: #edf1f5;
    --k24-panel: #f7f9fc;
    --k24-panel-warm: #fffbed;
    --k24-yellow: #ffd400;
    --k24-yellow-strong: #f2c900;
    --k24-shadow-sm: 0 8px 24px rgba(15,23,42,.045);
    --k24-shadow-md: 0 18px 54px rgba(15,23,42,.075);
}

body.k24-shell-template,
.k24-set-page,
.k24-catalog-page,
.k24-home-shell,
.k24-rankings,
.k24-compare-page,
.k24-site-header,
.k24-site-footer {
    font-family: var(--k24-ui-font);
    font-optical-sizing: auto;
    -webkit-font-smoothing: antialiased;
    text-rendering: optimizeLegibility;
}

.k24-set-title,
.k24-set-section__heading h2,
.k24-expert__topline h2,
.k24-expert-scoreboard__value,
.k24-expert-benchmark > strong,
.k24-set-hero__insight strong {
    font-family: var(--k24-display-font);
}

.k24-expert-scoreboard__value,
.k24-expert-benchmark > strong,
.k24-set-pricebox__price,
.k24-set-hero__insight strong,
.k24-expert-dimension__head strong {
    font-variant-numeric: tabular-nums lining-nums;
}

.k24-set-single .wp-block-post-content > .k24-set-page,
.k24-set-single .entry-content > .k24-set-page,
.k24-set-single main .k24-set-page {
    width: min(1280px, calc(100vw - 36px)) !important;
}

.k24-set-page {
    --k24-border: var(--k24-line);
    --k24-muted: var(--k24-muted-2);
    --k24-text: var(--k24-ink);
    --k24-soft: var(--k24-panel);
    --k24-accent: var(--k24-yellow);
    --k24-accent-strong: var(--k24-yellow-strong);
    --k24-radius: 24px;
    width: min(1280px, calc(100vw - 36px));
    margin-top: 32px;
    line-height: 1.62;
}

.k24-set-breadcrumb {
    margin-bottom: 18px;
    font-size: 12px;
    font-weight: 650;
}

/* Hero: mniej "formularzowo", bardziej produktowo. */
.k24-set-hero {
    grid-template-columns: minmax(360px, .92fr) minmax(0, 1.08fr);
    gap: clamp(34px, 5vw, 72px);
    align-items: stretch;
    padding: clamp(24px, 3.5vw, 46px);
    border-color: #dce3eb;
    background:
        radial-gradient(circle at 92% 8%, rgba(255,212,0,.11), transparent 32%),
        linear-gradient(145deg, #ffffff 0%, #fbfcfe 65%, #f7f9fc 100%);
    box-shadow: var(--k24-shadow-md);
}

.k24-set-hero__media {
    min-height: 430px;
    padding: clamp(24px, 4vw, 48px);
    border: 1px solid #e7ebf0;
    background:
        linear-gradient(135deg, rgba(255,255,255,.98), rgba(245,248,251,.96));
}

.k24-set-image {
    filter: drop-shadow(0 24px 26px rgba(15,23,42,.14));
}

.k24-set-hero__content {
    display: flex;
    min-width: 0;
    flex-direction: column;
    justify-content: center;
}

.k24-set-eyebrow,
.k24-set-section__eyebrow {
    color: #526176;
    font-size: 11px;
    font-weight: 850;
    letter-spacing: .105em;
}

.k24-set-title {
    max-width: 760px;
    font-size: clamp(36px, 4vw, 58px);
    line-height: .99;
    letter-spacing: -.052em;
}

.k24-set-chips {
    margin-top: 22px;
    gap: 7px;
}

.k24-chip {
    min-height: 30px;
    padding: 4px 10px;
    border-color: #d8e0e9;
    background: rgba(255,255,255,.82);
    color: #435066;
    font-size: 11px;
    font-weight: 750;
}

.k24-set-stat-grid {
    gap: 8px;
    margin-top: 22px;
}

.k24-set-stat {
    padding: 12px 14px;
    border-color: #e3e8ee;
    border-radius: 12px;
    background: rgba(247,249,252,.9);
}

.k24-set-stat span { font-size: 10px; font-weight: 720; text-transform: uppercase; letter-spacing: .045em; }
.k24-set-stat strong { font-size: 15px; }

.k24-set-hero__insights {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 8px;
    margin-top: 12px;
}

.k24-set-hero__insight {
    min-width: 0;
    padding: 12px 13px;
    border: 1px solid #e1e7ee;
    border-radius: 12px;
    background: #fff;
}

.k24-set-hero__insight.is-score {
    border-color: #e7ca26;
    background: #fffdf4;
}

.k24-set-hero__insight > span,
.k24-set-hero__insight > strong,
.k24-set-hero__insight > em { display: block; }
.k24-set-hero__insight > span {
    color: #667085;
    font-size: 9px;
    font-weight: 850;
    letter-spacing: .055em;
    text-transform: uppercase;
}
.k24-set-hero__insight > strong {
    margin-top: 4px;
    color: var(--k24-ink);
    font-size: 25px;
    line-height: 1;
    letter-spacing: -.04em;
}
.k24-set-hero__insight > strong small {
    margin-left: 2px;
    color: #98a2b3;
    font-size: .52em;
    font-weight: 700;
}
.k24-set-hero__insight > em {
    margin-top: 5px;
    overflow: hidden;
    color: #7a8698;
    font-size: 9px;
    font-style: normal;
    line-height: 1.3;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.k24-set-pricebox {
    margin-top: 14px;
    padding: 19px 20px;
    border: 1px solid rgba(255,255,255,.08);
    border-radius: 15px;
    background: linear-gradient(135deg, #0c1628 0%, #152238 100%);
    box-shadow: 0 14px 32px rgba(15,23,42,.12);
}
.k24-set-pricebox__price { font-size: 30px; letter-spacing: -.035em; }

.k24-button {
    transition: transform .16s ease, box-shadow .16s ease, background-color .16s ease;
}
.k24-button:hover { transform: translateY(-1px); }
.k24-button--primary:hover { box-shadow: 0 8px 18px rgba(226,187,0,.22); }

/* Sekcje Set Hub: większy oddech i mniej wrażenia "box w boxie". */
.k24-set-section {
    margin-top: 30px;
    padding: clamp(25px, 3.4vw, 42px);
    border-color: #dee5ed;
    box-shadow: var(--k24-shadow-sm);
}
.k24-set-section__heading { margin-bottom: 22px; }
.k24-set-section__heading h2 {
    font-size: clamp(28px, 3.3vw, 40px);
    line-height: 1.07;
    letter-spacing: -.038em;
}

/* Expert Lab 4.7 — silna hierarchia, benchmarki i bardziej redakcyjny język. */
.k24-expert {
    padding: clamp(28px, 4vw, 48px);
    overflow: visible;
    border-left: 0;
    border-color: #d9e1ea;
    background:
        radial-gradient(circle at 95% 0%, rgba(255,212,0,.095), transparent 25%),
        #fff;
}
.k24-expert::before {
    inset: 24px auto 24px 0;
    width: 4px;
    border-radius: 0 999px 999px 0;
}

.k24-expert__topline {
    gap: 28px;
    padding-bottom: 24px;
    border-bottom-color: #e6ebf1;
}
.k24-expert__topline h2 {
    max-width: 820px;
    font-size: clamp(30px, 3.7vw, 46px);
    line-height: 1.02;
    letter-spacing: -.045em;
}
.k24-expert__lead {
    max-width: 760px;
    margin-top: 11px;
    color: #59677b;
    font-size: 14px;
    line-height: 1.65;
}
.k24-expert-badge {
    min-height: 31px;
    padding: 6px 10px;
    font-size: 9px;
    letter-spacing: .055em;
}

.k24-expert-labgrid {
    grid-template-columns: minmax(285px, .72fr) minmax(0, 1.58fr);
    gap: 14px;
    margin-top: 22px;
}

.k24-expert-scoreboard {
    min-height: 300px;
    padding: 26px;
    border: 1px solid rgba(255,255,255,.08);
    border-radius: 19px;
    background:
        radial-gradient(circle at 88% 12%, rgba(255,212,0,.10), transparent 32%),
        linear-gradient(150deg, #0a1425 0%, #132139 100%);
    box-shadow: 0 18px 38px rgba(15,23,42,.16);
}
.k24-expert-scoreboard__label { color: #c6cfdb; font-size: 10px; }
.k24-expert-scoreboard__value {
    margin-top: 13px;
    font-size: clamp(58px, 6.4vw, 82px);
    font-weight: 620;
}
.k24-expert-scoreboard__grade { margin-top: 9px; font-size: 15px; }
.k24-expert-scoreboard > p { max-width: 420px; font-size: 11px; line-height: 1.62; }

.k24-expert-meter { height: 9px; margin-top: 12px; }
.k24-expert-meter::-webkit-progress-value { background: #15233a; }
.k24-expert-meter::-moz-progress-bar { background: #15233a; }
.k24-expert-meter--main { height: 10px; margin-top: 18px; }

.k24-expert-dimensions { gap: 10px; }
.k24-expert-dimension {
    position: relative;
    padding: 19px 20px;
    border-color: #e0e6ed;
    border-radius: 15px;
    background: #fbfcfe;
    transition: transform .16s ease, border-color .16s ease, box-shadow .16s ease;
}
.k24-expert-dimension:hover {
    transform: translateY(-2px);
    border-color: #cfd8e4;
    box-shadow: 0 10px 24px rgba(15,23,42,.055);
}
.k24-expert-dimension__head span { color: #506079; font-size: 10px; }
.k24-expert-dimension__head strong { font-size: 20px; }
.k24-expert-dimension small { margin-top: 8px; font-size: 10px; line-height: 1.45; }

.k24-expert-benchmarks {
    gap: 12px;
    margin-top: 22px;
}
.k24-expert-benchmark {
    display: flex;
    min-height: 218px;
    flex-direction: column;
    padding: 20px;
    border-color: #dfe5ec;
    border-radius: 16px;
    background: linear-gradient(180deg,#fff 0%,#fbfcfe 100%);
}
.k24-expert-benchmark__eyebrow { font-size: 9px; letter-spacing: .09em; }
.k24-expert-benchmark > strong { font-size: clamp(28px, 3vw, 38px); }
.k24-expert-benchmark > p:not(.k24-expert-benchmark__eyebrow) {
    min-height: 0;
    margin-top: 9px;
    color: #59677a;
    font-size: 10px;
    line-height: 1.55;
}
.k24-expert-benchmark__scale { margin-top: auto; padding-top: 17px; }
.k24-expert-benchmark__scale > div {
    display: flex;
    justify-content: space-between;
    margin-bottom: 5px;
    color: #98a2b3;
    font-size: 8px;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: .04em;
}
.k24-expert-benchmark__scale progress {
    width: 100%;
    height: 8px;
    overflow: hidden;
    border: 0;
    border-radius: 999px;
    background: #edf1f5;
    appearance: none;
    -webkit-appearance: none;
}
.k24-expert-benchmark__scale progress::-webkit-progress-bar { background: #edf1f5; border-radius: 999px; }
.k24-expert-benchmark__scale progress::-webkit-progress-value { background: linear-gradient(90deg,#16243b,#ffd400); border-radius: 999px; }
.k24-expert-benchmark__scale progress::-moz-progress-bar { background: linear-gradient(90deg,#16243b,#ffd400); border-radius: 999px; }
.k24-expert-benchmark__foot { margin-top: 13px; }
.k24-expert-benchmark__foot span { padding: 5px 8px; font-size: 9px; }

.k24-expert-model,
.k24-expert-signals,
.k24-expert-analysis {
    margin-top: 22px;
    padding: 22px 24px;
    border-color: #e1e7ee;
    border-radius: 17px;
}
.k24-expert-model { background: #fbfcfe; }
.k24-expert-subhead { margin-bottom: 15px; }
.k24-expert-subhead span { font-size: 12px; letter-spacing: .045em; }
.k24-expert-subhead small { max-width: 460px; text-align: right; line-height: 1.45; }

.k24-expert-model__grid { gap: 9px; }
.k24-expert-model__row { padding: 14px; border-radius: 12px; }
.k24-expert-model__row span { font-size: 8px; }
.k24-expert-model__row strong { font-size: 14px; }

.k24-expert-signals { background: #f6f8fb; }
.k24-expert-signals__grid { gap: 10px; }
.k24-expert-signal {
    min-height: 116px;
    padding: 14px;
    border-radius: 12px;
}
.k24-expert-signal > span { font-size: 8px; }
.k24-expert-signal > strong { margin-top: 7px; font-size: 16px; line-height: 1.18; }
.k24-expert-signal > small { margin-top: auto; padding-top: 9px; font-size: 9px; }

.k24-expert-analysis {
    background: #fff;
}
.k24-expert-analysis ol { gap: 10px; }
.k24-expert-analysis li {
    min-height: 78px;
    padding: 15px 18px 15px 54px;
    border: 1px solid #e6ebf1;
    border-left: 3px solid #d7dee8;
    border-radius: 12px;
    background: #fbfcfe;
}
.k24-expert-analysis li::before {
    left: 16px;
    top: 17px;
    width: 24px;
    height: 24px;
    background: #101b2e;
    font-size: 10px;
}
.k24-expert-analysis li > strong {
    display: block;
    margin-bottom: 4px;
    color: var(--k24-ink);
    font-size: 13px;
    line-height: 1.25;
}
.k24-expert-analysis li > p {
    margin: 0;
    color: #475467;
    font-size: 13px;
    line-height: 1.65;
}
.k24-expert-analysis li:first-child { border-left-color: var(--k24-yellow); }

.k24-expert-method {
    margin-top: 18px;
    padding-top: 15px;
}
.k24-expert-method summary {
    width: max-content;
    max-width: 100%;
    padding: 7px 10px;
    border-radius: 8px;
    background: #f3f5f8;
    color: #475467;
    font-size: 10px;
}

/* Focus i hover są celowo spokojne — ruch ma wspierać interakcję, nie odciągać od danych. */
.k24-set-page a:focus-visible,
.k24-set-page button:focus-visible,
.k24-set-page summary:focus-visible {
    outline: 3px solid rgba(255,212,0,.55);
    outline-offset: 3px;
}

@media (max-width: 1020px) {
    .k24-set-hero { grid-template-columns: minmax(300px,.9fr) minmax(0,1.1fr); gap: 28px; }
    .k24-set-hero__media { min-height: 350px; }
    .k24-set-hero__insights { grid-template-columns: 1fr 1fr; }
    .k24-expert-labgrid { grid-template-columns: 1fr; }
    .k24-expert-scoreboard { min-height: 0; }
    .k24-expert-benchmarks { grid-template-columns: 1fr 1fr; }
}

@media (max-width: 760px) {
    .k24-set-single .wp-block-post-content > .k24-set-page,
    .k24-set-single .entry-content > .k24-set-page,
    .k24-set-single main .k24-set-page,
    .k24-set-page { width: min(100% - 20px, 720px) !important; }
    .k24-set-page { margin-top: 18px; }
    .k24-set-hero { grid-template-columns: 1fr; padding: 17px; border-radius: 18px; }
    .k24-set-hero__media { min-height: 285px; padding: 18px; border-radius: 14px; }
    .k24-set-title { font-size: clamp(34px, 10vw, 48px); }
    .k24-set-stat-grid { grid-template-columns: 1fr 1fr; }
    .k24-set-hero__insights { grid-template-columns: repeat(3,minmax(0,1fr)); }
    .k24-set-hero__insight { padding: 10px; }
    .k24-set-hero__insight > strong { font-size: 21px; }
    .k24-set-section { margin-top: 20px; padding: 20px; border-radius: 18px; }
    .k24-expert { padding: 22px 20px; }
    .k24-expert__topline { flex-direction: column; padding-bottom: 20px; }
    .k24-expert__badges { justify-content: flex-start; }
    .k24-expert-dimensions { grid-template-columns: 1fr 1fr; }
    .k24-expert-model__grid { grid-template-columns: 1fr 1fr; }
    .k24-expert-signals__grid { grid-template-columns: 1fr 1fr; }
    .k24-expert-subhead { align-items: flex-start; flex-direction: column; }
    .k24-expert-subhead small { text-align: left; }
}

@media (max-width: 520px) {
    .k24-set-hero__media { min-height: 240px; }
    .k24-set-hero__insights { grid-template-columns: 1fr; }
    .k24-set-hero__insight { display: grid; grid-template-columns: 1fr auto; gap: 3px 10px; align-items: end; }
    .k24-set-hero__insight > span { grid-column: 1; }
    .k24-set-hero__insight > strong { grid-column: 2; grid-row: 1 / span 2; }
    .k24-set-hero__insight > em { grid-column: 1; margin-top: 0; }
    .k24-set-pricebox { align-items: stretch; flex-direction: column; }
    .k24-expert-dimensions,
    .k24-expert-benchmarks,
    .k24-expert-model__grid,
    .k24-expert-signals__grid { grid-template-columns: 1fr; }
    .k24-expert-scoreboard { padding: 21px; }
    .k24-expert-scoreboard__value { font-size: 64px; }
    .k24-expert-model,
    .k24-expert-signals,
    .k24-expert-analysis { padding: 17px; }
    .k24-expert-analysis li { padding: 14px 14px 14px 48px; }
}

@media (prefers-reduced-motion: reduce) {
    .k24-button,
    .k24-expert-dimension { transition: none !important; }
    .k24-button:hover,
    .k24-expert-dimension:hover { transform: none !important; }
}

/* 4.8.0 — Discovery UX: Knowledge Graph 2.0 + Compare Lab 2.0 */
.k24-knowledge-graph,
.k24-compare-panel,
.k24-compare-matrix {
    --k24-discovery-ink:#101b2e;
    --k24-discovery-muted:#657187;
    --k24-discovery-line:#dde4ec;
    --k24-discovery-soft:#f6f8fb;
    --k24-discovery-yellow:#ffd400;
}

/* Knowledge Graph 2.0 */
.k24-knowledge-graph {
    border-left: 0;
    background:
        radial-gradient(circle at 94% 3%, rgba(255,212,0,.08), transparent 22%),
        #fff;
}
.k24-graph-heading {
    align-items:flex-start;
    padding-bottom:22px;
    border-bottom:1px solid #e7ebf0;
}
.k24-graph-heading > div { max-width:860px; }
.k24-graph-heading h2 { margin-bottom:8px; }
.k24-graph-heading__sub {
    margin:0;
    max-width:760px;
    color:var(--k24-discovery-muted);
    font-size:14px;
    line-height:1.62;
}
.k24-graph-heading>span {
    margin-top:4px;
    padding:8px 11px;
    background:#111b2d;
    color:#fff;
    font-size:9px;
    letter-spacing:.055em;
}
.k24-graph-block {
    margin-top:20px;
    overflow:hidden;
    border-color:var(--k24-discovery-line);
    border-radius:18px;
    box-shadow:0 10px 28px rgba(15,23,42,.04);
}
.k24-graph-block__heading {
    padding:16px 20px;
    background:#f8fafc;
}
.k24-graph-block__heading>span { font-size:11px; }
.k24-graph-block__heading>small { font-size:10px; }

.k24-graph-timeline {
    grid-template-columns:minmax(0,1fr) minmax(0,1.18fr) minmax(0,1fr);
    padding:18px 10px 10px;
    background:linear-gradient(180deg,#fff 0%,#fbfcfe 100%);
}
.k24-graph-timeline:before {
    left:18%; right:18%; top:47px;
    height:1px;
    background:#ccd5e0;
}
.k24-graph-timeline__node {
    min-height:285px;
    padding:16px 18px 20px;
    align-content:start;
    border-radius:16px;
    transition:transform .16s ease, box-shadow .16s ease, background-color .16s ease;
}
.k24-graph-timeline__node:not(.is-current):not(.is-empty):hover {
    transform:translateY(-2px);
    background:#fff;
    box-shadow:0 12px 26px rgba(15,23,42,.06);
}
.k24-graph-timeline__node.is-current {
    margin:-6px 4px 0;
    min-height:305px;
    background:linear-gradient(180deg,#fff9da 0%,#fffdf3 100%);
    border:1px solid rgba(229,188,0,.32);
    box-shadow:0 16px 34px rgba(147,118,0,.10);
}
.k24-graph-timeline__node>span {
    position:relative;
    z-index:2;
    min-height:25px;
    display:inline-flex;
    align-items:center;
    padding:5px 9px;
    font-size:8px;
}
.k24-graph-timeline__node.is-current>span { box-shadow:0 6px 14px rgba(226,187,0,.15); }
.k24-graph-timeline__img { height:150px; margin-top:5px; }
.k24-graph-timeline__node.is-current .k24-graph-timeline__img { height:170px; }
.k24-graph-timeline__node strong {
    font-size:15px;
    line-height:1.28;
    letter-spacing:-.018em;
}
.k24-graph-timeline__node.is-current strong { font-size:17px; }
.k24-graph-timeline__node small { font-size:10px; line-height:1.45; }
.k24-graph-timeline__node:not(:last-child):after {
    content:"→";
    position:absolute;
    z-index:3;
    right:-11px;
    top:35px;
    width:22px;
    height:22px;
    display:grid;
    place-items:center;
    border:1px solid #d9e0e8;
    border-radius:50%;
    background:#fff;
    color:#69778b;
    font-size:11px;
    font-weight:900;
}

.k24-graph-grid {
    grid-template-columns:repeat(4,minmax(0,1fr));
    gap:12px;
    padding:14px;
    background:#f8fafc;
}
.k24-graph-card {
    display:flex;
    min-width:0;
    flex-direction:column;
    overflow:hidden;
    border:1px solid #e0e6ed!important;
    border-radius:14px;
    background:#fff;
    transition:transform .16s ease, box-shadow .16s ease, border-color .16s ease;
}
.k24-graph-card:hover {
    transform:translateY(-3px);
    border-color:#ccd6e2!important;
    box-shadow:0 13px 28px rgba(15,23,42,.07);
}
.k24-graph-card__image { aspect-ratio:16/10; padding:12px; background:#f2f5f8; }
.k24-graph-card__body { display:flex; flex:1; flex-direction:column; gap:9px; padding:14px; }
.k24-graph-card__meta span { font-size:9px; }
.k24-graph-card__meta b { padding:5px 6px; font-size:7px; letter-spacing:.045em; }
.k24-graph-card__title { min-height:2.55em; font-size:14px; line-height:1.28; }
.k24-graph-card__facts { font-size:10px; }
.k24-graph-card__similarity { margin-top:2px; }
.k24-graph-card__similarity>div { display:flex; justify-content:space-between; gap:10px; align-items:baseline; }
.k24-graph-card__similarity span { color:#68758a; font-size:9px; font-weight:750; text-transform:uppercase; letter-spacing:.035em; }
.k24-graph-card__similarity strong { font-size:13px; color:#111b2d; }
.k24-graph-card__similarity progress,
.k24-compare-selected__meter,
.k24-compare-suggestion progress,
.k24-compare-scorecard progress {
    width:100%;
    height:7px;
    overflow:hidden;
    border:0;
    border-radius:999px;
    background:#edf1f5;
    appearance:none;
    -webkit-appearance:none;
}
.k24-graph-card__similarity progress { margin-top:6px; }
.k24-graph-card__similarity progress::-webkit-progress-bar,
.k24-compare-selected__meter::-webkit-progress-bar,
.k24-compare-suggestion progress::-webkit-progress-bar,
.k24-compare-scorecard progress::-webkit-progress-bar { background:#edf1f5; border-radius:999px; }
.k24-graph-card__similarity progress::-webkit-progress-value,
.k24-compare-selected__meter::-webkit-progress-value,
.k24-compare-suggestion progress::-webkit-progress-value,
.k24-compare-scorecard progress::-webkit-progress-value { background:linear-gradient(90deg,#142239,#ffd400); border-radius:999px; }
.k24-graph-card__similarity progress::-moz-progress-bar,
.k24-compare-selected__meter::-moz-progress-bar,
.k24-compare-suggestion progress::-moz-progress-bar,
.k24-compare-scorecard progress::-moz-progress-bar { background:linear-gradient(90deg,#142239,#ffd400); border-radius:999px; }
.k24-graph-card__reasons { margin-top:1px; }
.k24-graph-card__reasons span { padding:5px 6px; background:#f2f5f8; font-size:8px; }
.k24-graph-card__actions {
    display:grid;
    grid-template-columns:1fr 1fr;
    gap:7px;
    margin-top:auto;
    padding-top:3px;
}
.k24-graph-card__actions a {
    min-height:34px;
    display:flex;
    align-items:center;
    justify-content:center;
    padding:7px 8px;
    border:1px solid #d8e0e8;
    border-radius:9px;
    color:#172033;
    text-decoration:none;
    font-size:9px;
    font-weight:850;
}
.k24-graph-card__actions a.is-primary { border-color:#f0c900; background:#ffd400; }
.k24-graph-method {
    margin:14px 2px 0;
    color:#7a8799;
    font-size:10px;
}
.k24-graph-method summary {
    width:max-content;
    max-width:100%;
    cursor:pointer;
    padding:7px 10px;
    border-radius:8px;
    background:#f2f5f8;
    color:#536177;
    font-weight:750;
}
.k24-graph-method p { max-width:900px; margin:9px 0 0; line-height:1.55; }

/* Compare Lab 2.0 */
.k24-compare-panel { background:linear-gradient(180deg,#fff 0%,#fbfcfe 100%); }
.k24-compare-panel__heading { align-items:flex-start; }
.k24-compare-panel__heading>div { max-width:800px; }
.k24-compare-panel__heading h2 { margin-bottom:7px; }
.k24-compare-panel__heading p { margin:0; color:#657187; font-size:13px; line-height:1.55; }
.k24-compare-panel__heading>a {
    min-height:38px;
    display:flex;
    align-items:center;
    padding:8px 11px;
    border:1px solid #dce3eb;
    border-radius:9px;
    background:#fff;
}
.k24-compare-suggestions { gap:14px; }
.k24-compare-suggestion {
    display:flex;
    flex-direction:column;
    overflow:hidden;
    border-radius:16px;
    transition:transform .16s ease, box-shadow .16s ease;
}
.k24-compare-suggestion:hover { transform:translateY(-2px); box-shadow:0 12px 26px rgba(15,23,42,.06); }
.k24-compare-suggestion__image { aspect-ratio:16/9; padding:14px; }
.k24-compare-suggestion__body { flex:1; padding:15px; gap:8px; }
.k24-compare-suggestion__body>span { font-size:9px; font-weight:700; }
.k24-compare-suggestion__body>strong { min-height:2.6em; font-size:15px; line-height:1.3; }
.k24-compare-suggestion__metrics { display:grid; grid-template-columns:repeat(3,1fr); gap:6px; }
.k24-compare-suggestion__metrics span { padding:8px 7px; border-radius:9px; background:#f4f6f9; color:#6c788a; font-size:8px; line-height:1.25; }
.k24-compare-suggestion__metrics b { display:block; margin-bottom:2px; color:#152036; font-size:11px; }
.k24-compare-suggestion progress { margin-top:1px; }
.k24-compare-suggestion__actions { display:grid; grid-template-columns:1fr 1fr; gap:7px; margin-top:auto; padding-top:3px; }
.k24-compare-suggestion__actions a { min-height:36px; display:flex; align-items:center; justify-content:center; border:1px solid #d9e1e9; border-radius:9px; color:#142033; text-decoration:none; font-size:9px; font-weight:850; }
.k24-compare-suggestion__actions a.is-primary { background:#ffd400; border-color:#efc900; }

.k24-compare-selected { gap:16px; }
.k24-compare-selected__card {
    border-radius:18px;
    box-shadow:0 10px 28px rgba(15,23,42,.04);
}
.k24-compare-selected__image { aspect-ratio:16/10; padding:16px; }
.k24-compare-selected__body { padding:16px!important; gap:9px!important; }
.k24-compare-selected__body>span { font-size:10px; font-weight:700; }
.k24-compare-selected__body>strong { min-height:2.55em; font-size:16px; line-height:1.28; }
.k24-compare-selected__stats { display:grid; grid-template-columns:repeat(3,1fr); gap:6px; }
.k24-compare-selected__stats span { padding:8px; border-radius:9px; background:#f5f7fa; color:#6b778a; font-size:8px; line-height:1.25; }
.k24-compare-selected__stats b { display:block; color:#142033; font-size:11px; }
.k24-compare-selected__meter { margin-top:2px; }

.k24-compare-matrix { overflow:visible; border:0; background:transparent; box-shadow:none; }
.k24-compare-heading { padding:0 0 18px; border:0; align-items:flex-start; }
.k24-compare-heading>div { max-width:820px; }
.k24-compare-heading h2 { font-size:clamp(30px,3vw,40px); }
.k24-compare-heading p { margin:8px 0 0; color:#657187; font-size:13px; line-height:1.55; }
.k24-compare-heading>span { margin-top:5px; }
.k24-compare-scoregrid { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:12px; }
.k24-compare-scorecard {
    min-width:0;
    padding:18px;
    border:1px solid #dde4ec;
    border-radius:16px;
    background:#fff;
    box-shadow:0 8px 24px rgba(15,23,42,.04);
}
.k24-compare-scorecard__title { display:grid; gap:4px; min-height:58px; color:#142033; text-decoration:none; }
.k24-compare-scorecard__title span { color:#718096; font-size:9px; font-weight:700; }
.k24-compare-scorecard__title strong { font-size:14px; line-height:1.25; }
.k24-compare-scorecard__metric { margin-top:13px; }
.k24-compare-scorecard__metric>div { display:flex; justify-content:space-between; gap:10px; align-items:baseline; }
.k24-compare-scorecard__metric span { color:#657187; font-size:9px; font-weight:750; }
.k24-compare-scorecard__metric strong { color:#111b2d; font-size:12px; }
.k24-compare-scorecard__metric progress { margin-top:6px; }
.k24-compare-scorecard__facts { display:grid; gap:5px; margin-top:14px; padding-top:12px; border-top:1px solid #edf0f4; color:#6d798b; font-size:9px; }
.k24-compare-scorecard__facts b { color:#152036; font-size:11px; }
.k24-compare-details {
    margin-top:16px;
    overflow:hidden;
    border:1px solid #dde4ec;
    border-radius:16px;
    background:#fff;
}
.k24-compare-details>summary {
    cursor:pointer;
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:18px;
    padding:16px 18px;
    color:#172033;
    font-size:12px;
    font-weight:850;
    list-style-position:inside;
}
.k24-compare-details>summary span { color:#7b8799; font-size:10px; font-weight:600; }
.k24-compare-details[open]>summary { border-bottom:1px solid #e9edf2; background:#f8fafc; }
.k24-compare-table thead th { background:#111b2d; }
.k24-compare-table td.is-best { background:#fffbe8; }
.k24-compare-findings { margin-top:18px; border-radius:18px; background:linear-gradient(145deg,#101b2e,#172640); }
.k24-compare-findings li { border:1px solid rgba(255,255,255,.06); }

@media(max-width:1100px){
    .k24-graph-grid{grid-template-columns:repeat(2,1fr)}
    .k24-compare-scoregrid{grid-template-columns:repeat(2,1fr)}
    .k24-compare-selected{grid-template-columns:repeat(2,1fr)}
}
@media(max-width:760px){
    .k24-graph-heading,.k24-graph-block__heading,.k24-compare-panel__heading,.k24-compare-heading{align-items:flex-start;flex-direction:column}
    .k24-graph-timeline{grid-template-columns:1fr;padding:10px}
    .k24-graph-timeline:before{left:31px;right:auto;top:48px;bottom:48px;width:1px;height:auto}
    .k24-graph-timeline__node{min-height:0;margin:0!important;padding:16px 14px 20px 54px;text-align:left;border-bottom:1px solid #edf0f4;border-radius:0;background:transparent!important;box-shadow:none!important}
    .k24-graph-timeline__node:last-child{border-bottom:0}
    .k24-graph-timeline__node>span{justify-self:start}
    .k24-graph-timeline__node:not(:last-child):after{content:"↓";left:20px;right:auto;top:auto;bottom:-12px}
    .k24-graph-timeline__img,.k24-graph-timeline__node.is-current .k24-graph-timeline__img{height:145px;justify-items:start}
    .k24-graph-timeline__img img{max-width:280px}
    .k24-graph-grid{grid-template-columns:1fr 1fr}
    .k24-compare-suggestions{grid-template-columns:1fr}
    .k24-compare-scoregrid{grid-template-columns:1fr 1fr}
    .k24-compare-details>summary{align-items:flex-start;flex-direction:column}
}
@media(max-width:520px){
    .k24-graph-grid,.k24-compare-scoregrid,.k24-compare-selected{grid-template-columns:1fr}
    .k24-graph-card__actions,.k24-compare-suggestion__actions{grid-template-columns:1fr 1fr}
    .k24-compare-suggestion__metrics,.k24-compare-selected__stats{grid-template-columns:1fr 1fr 1fr}
}
@media(prefers-reduced-motion:reduce){
    .k24-graph-timeline__node,.k24-graph-card,.k24-compare-suggestion{transition:none!important;transform:none!important}
}


/* 4.9.0 — Knowledge Graph caption clarity fix
 * Product artwork remains a clean visual stage; titles and metadata are rendered
 * in a dedicated caption area below it and can never sit on top of the image. */
.k24-graph-timeline__node {
    grid-template-rows:auto minmax(0,1fr) auto;
    gap:10px;
}
.k24-graph-timeline__badge {
    position:relative;
    z-index:3;
}
.k24-graph-timeline__img {
    position:relative;
    display:grid;
    place-items:center;
    width:100%;
    height:156px;
    margin:0;
    padding:8px 8px 12px;
    overflow:hidden;
    isolation:isolate;
}
.k24-graph-timeline__node.is-current .k24-graph-timeline__img {
    height:176px;
    padding-bottom:14px;
}
.k24-graph-timeline__img > a {
    display:grid;
    place-items:center;
    width:100%;
    height:100%;
    min-height:0;
}
.k24-graph-timeline__img img,
.k24-graph-timeline__img > a img {
    display:block;
    width:100%;
    height:100%;
    max-width:100%;
    max-height:100%;
    object-fit:contain;
    object-position:center;
}
.k24-graph-timeline__caption {
    position:relative;
    z-index:4;
    display:grid;
    gap:5px;
    width:100%;
    min-height:58px;
    padding:10px 12px 4px;
    margin:0;
    border-top:1px solid rgba(221,228,236,.8);
    background:#fff;
    text-align:center;
}
.k24-graph-timeline__node.is-current .k24-graph-timeline__caption {
    background:#fffdf4;
    border-top-color:rgba(229,188,0,.24);
}
.k24-graph-timeline__caption > a {
    color:var(--k24-discovery-ink,#101b2e);
    text-decoration:none;
}
.k24-graph-timeline__caption strong {
    display:block;
    margin:0;
    font-size:14px;
    line-height:1.3;
    letter-spacing:-.015em;
    text-wrap:balance;
}
.k24-graph-timeline__node.is-current .k24-graph-timeline__caption strong {
    font-size:15px;
}
.k24-graph-timeline__caption small {
    display:block;
    color:#748196;
    font-size:10px;
    line-height:1.45;
}
@media (max-width:720px) {
    .k24-graph-timeline__node {
        grid-template-rows:auto auto auto;
    }
    .k24-graph-timeline__img,
    .k24-graph-timeline__node.is-current .k24-graph-timeline__img {
        height:150px;
        padding:8px 0 10px;
        justify-items:start;
    }
    .k24-graph-timeline__img > a {
        justify-items:start;
    }
    .k24-graph-timeline__img img,
    .k24-graph-timeline__img > a img {
        max-width:300px;
        object-position:left center;
    }
    .k24-graph-timeline__caption,
    .k24-graph-timeline__node.is-current .k24-graph-timeline__caption {
        min-height:0;
        padding:10px 0 2px;
        background:transparent;
        text-align:left;
    }
}

/* =========================================================
 * 5.0 — K24 Buying Guides
 * ======================================================= */
.k24-guides {
    width:min(1280px,calc(100% - 40px));
    margin:0 auto;
    padding:34px 0 88px;
    color:var(--k24-discovery-ink,#101b2e);
}
.k24-guide-breadcrumb {
    display:flex;
    align-items:center;
    gap:8px;
    margin:0 0 16px;
    color:#7a8798;
    font-size:13px;
}
.k24-guide-breadcrumb a { color:#526175; text-decoration:none; }
.k24-guide-hero {
    display:grid;
    grid-template-columns:minmax(0,1fr) 180px;
    gap:32px;
    align-items:end;
    padding:42px 44px;
    border:1px solid #dde4ec;
    border-radius:22px;
    background:linear-gradient(135deg,#fff 0%,#fbfcfe 68%,#fff9df 100%);
    box-shadow:0 16px 42px rgba(17,31,52,.055);
}
.k24-guide-hero--detail { margin-bottom:18px; }
.k24-guide-eyebrow {
    margin:0 0 10px;
    color:#334766;
    font-size:12px;
    font-weight:800;
    letter-spacing:.09em;
    text-transform:uppercase;
}
.k24-guide-hero h1 {
    max-width:880px;
    margin:0;
    font-size:clamp(34px,4vw,58px);
    line-height:1.02;
    letter-spacing:-.045em;
    text-wrap:balance;
}
.k24-guide-hero p:not(.k24-guide-eyebrow) {
    max-width:840px;
    margin:18px 0 0;
    color:#66758a;
    font-size:17px;
    line-height:1.7;
}
.k24-guide-hero__stat {
    display:grid;
    gap:4px;
    min-height:126px;
    padding:22px;
    align-content:center;
    border:1px solid #dce4ee;
    border-radius:16px;
    background:rgba(255,255,255,.86);
}
.k24-guide-hero__stat strong {
    font-size:38px;
    line-height:1;
    letter-spacing:-.04em;
}
.k24-guide-hero__stat span { color:#758196; font-size:12px; line-height:1.45; }
.k24-guide-principles,
.k24-guide-how {
    display:grid;
    grid-template-columns:repeat(3,minmax(0,1fr));
    gap:12px;
    margin:18px 0 30px;
}
.k24-guide-how { grid-template-columns:1fr 1.35fr; }
.k24-guide-principles > div,
.k24-guide-how > div {
    padding:20px 22px;
    border:1px solid #e0e6ee;
    border-radius:15px;
    background:#fff;
}
.k24-guide-principles strong,
.k24-guide-how span {
    display:block;
    margin-bottom:7px;
    color:#17243a;
    font-size:12px;
    font-weight:800;
    letter-spacing:.045em;
    text-transform:uppercase;
}
.k24-guide-principles span,
.k24-guide-how p {
    margin:0;
    color:#6f7c90;
    font-size:14px;
    line-height:1.6;
}
.k24-guide-hubgrid {
    display:grid;
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:16px;
    margin-top:22px;
}
.k24-guide-hubcard {
    display:grid;
    min-height:280px;
    padding:26px;
    border:1px solid #dde4ec;
    border-radius:18px;
    background:#fff;
    transition:transform .16s ease, box-shadow .16s ease, border-color .16s ease;
}
.k24-guide-hubcard:hover {
    transform:translateY(-2px);
    border-color:#cad5e2;
    box-shadow:0 16px 34px rgba(17,31,52,.07);
}
.k24-guide-hubcard__top,
.k24-guide-hubcard__foot {
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:16px;
}
.k24-guide-hubcard__top > span {
    color:#52647d;
    font-size:11px;
    font-weight:800;
    letter-spacing:.07em;
    text-transform:uppercase;
}
.k24-guide-hubcard__top em {
    padding:6px 9px;
    border-radius:999px;
    font-size:10px;
    font-style:normal;
    font-weight:800;
    letter-spacing:.04em;
}
.k24-guide-hubcard__top em.is-live { background:#eef8f1; color:#267340; }
.k24-guide-hubcard__top em.is-hold { background:#f3f5f8; color:#778397; }
.k24-guide-hubcard h2 {
    margin:26px 0 10px;
    font-size:28px;
    line-height:1.08;
    letter-spacing:-.035em;
    text-wrap:balance;
}
.k24-guide-hubcard > p { margin:0 0 28px; color:#6c798c; line-height:1.65; }
.k24-guide-hubcard__foot { margin-top:auto; padding-top:18px; border-top:1px solid #edf0f4; }
.k24-guide-hubcard__foot span { color:#7b8798; font-size:12px; }
.k24-guide-hubcard__foot a,
.k24-guide-card__actions a {
    color:#101b2e;
    font-size:13px;
    font-weight:800;
    text-decoration:none;
}
.k24-guide-coming,
.k24-guide-method,
.k24-guide-hold {
    margin-top:28px;
    padding:28px 30px;
    border-radius:18px;
    background:#101b2e;
    color:#fff;
}
.k24-guide-coming h2 { margin:2px 0 8px; font-size:30px; letter-spacing:-.03em; }
.k24-guide-coming p:not(.k24-guide-eyebrow),
.k24-guide-method p,
.k24-guide-hold p { margin:8px 0 0; color:#c3ccda; line-height:1.65; }
.k24-guide-coming .k24-guide-eyebrow { color:#ffd400; }
.k24-guide-list { display:grid; gap:14px; margin-top:26px; }
.k24-guide-card {
    position:relative;
    display:grid;
    grid-template-columns:56px 250px minmax(0,1fr);
    gap:0;
    overflow:hidden;
    border:1px solid #dde4ec;
    border-radius:18px;
    background:#fff;
    box-shadow:0 7px 22px rgba(17,31,52,.035);
}
.k24-guide-card__rank {
    display:grid;
    place-content:start center;
    gap:0;
    padding-top:24px;
    border-right:1px solid #edf0f4;
    background:#f7f9fb;
    color:#16243a;
}
.k24-guide-card__rank span { font-size:13px; color:#8994a4; }
.k24-guide-card__rank strong { font-size:27px; line-height:1; }
.k24-guide-card__image {
    display:grid;
    place-items:center;
    min-height:250px;
    padding:18px;
    background:#f5f7fa;
    border-right:1px solid #edf0f4;
}
.k24-guide-card__image img {
    display:block;
    width:100%;
    height:210px;
    object-fit:contain;
}
.k24-guide-placeholder { display:grid; place-items:center; width:100%; height:210px; color:#9aa6b6; font-weight:800; }
.k24-guide-card__body { padding:24px 26px; }
.k24-guide-card__meta { display:flex; flex-wrap:wrap; gap:8px; color:#738095; font-size:11px; font-weight:700; text-transform:uppercase; letter-spacing:.035em; }
.k24-guide-card h2 { margin:9px 0 18px; font-size:25px; line-height:1.1; letter-spacing:-.03em; }
.k24-guide-card h2 a { color:#111d31; text-decoration:none; }
.k24-guide-card__numbers { display:grid; grid-template-columns:1fr 1fr; gap:10px; }
.k24-guide-card__numbers > div { padding:13px 14px; border:1px solid #e6eaf0; border-radius:12px; background:#fafbfd; }
.k24-guide-card__numbers small { display:block; color:#7a879a; font-size:10px; font-weight:700; text-transform:uppercase; letter-spacing:.035em; }
.k24-guide-card__numbers strong { display:block; margin-top:4px; font-size:18px; }
.k24-guide-card__numbers i { display:block; height:5px; margin-top:9px; overflow:hidden; border-radius:999px; background:#e8edf2; }
.k24-guide-card__numbers i b { display:block; height:100%; border-radius:inherit; background:#111d31; }
.k24-guide-card__facts { display:flex; flex-wrap:wrap; gap:8px; margin-top:12px; }
.k24-guide-card__facts span { padding:7px 9px; border-radius:999px; background:#f1f4f7; color:#55647a; font-size:11px; font-weight:700; }
.k24-guide-card__why { margin-top:16px; padding-top:15px; border-top:1px solid #eef1f4; }
.k24-guide-card__why strong { font-size:11px; text-transform:uppercase; letter-spacing:.045em; }
.k24-guide-card__why ul { display:flex; flex-wrap:wrap; gap:7px; margin:9px 0 0; padding:0; list-style:none; }
.k24-guide-card__why li { padding:7px 9px; border:1px solid #e6eaf0; border-radius:8px; color:#657287; font-size:11px; }
.k24-guide-card__actions { display:flex; gap:16px; align-items:center; margin-top:18px; }
.k24-guide-card__actions a:first-child { padding:10px 14px; border-radius:10px; background:#ffd400; }
.k24-guide-card__actions a.is-secondary { color:#66758a; }
.k24-guide-method strong,
.k24-guide-hold strong { font-size:18px; }
@media (max-width:900px) {
    .k24-guide-hero { grid-template-columns:1fr; padding:30px; }
    .k24-guide-hero__stat { min-height:0; }
    .k24-guide-principles { grid-template-columns:1fr; }
    .k24-guide-how { grid-template-columns:1fr; }
    .k24-guide-hubgrid { grid-template-columns:1fr; }
    .k24-guide-card { grid-template-columns:46px 180px minmax(0,1fr); }
    .k24-guide-card__image { min-height:210px; padding:12px; }
    .k24-guide-card__image img,.k24-guide-placeholder { height:180px; }
}
@media (max-width:680px) {
    .k24-guides { width:min(100% - 24px,1280px); padding-top:20px; }
    .k24-guide-hero { padding:24px 20px; border-radius:18px; }
    .k24-guide-hero h1 { font-size:36px; }
    .k24-guide-hero p:not(.k24-guide-eyebrow) { font-size:15px; }
    .k24-guide-card { grid-template-columns:1fr; }
    .k24-guide-card__rank { position:absolute; z-index:2; top:12px; left:12px; width:44px; height:44px; place-content:center; padding:0; border:0; border-radius:12px; background:#101b2e; color:#fff; }
    .k24-guide-card__rank span { display:none; }
    .k24-guide-card__rank strong { font-size:18px; }
    .k24-guide-card__image { min-height:230px; border-right:0; border-bottom:1px solid #edf0f4; }
    .k24-guide-card__image img,.k24-guide-placeholder { height:205px; }
    .k24-guide-card__body { padding:20px; }
    .k24-guide-card__numbers { grid-template-columns:1fr; }
    .k24-guide-card h2 { font-size:22px; }
}
@media (prefers-reduced-motion: reduce) {
    .k24-guide-hubcard { transition:none; }
}

/* 5.1 Topical Authority / Internal Linking */
.k24-topic-paths__heading > span{align-self:end;color:#8b97a8;font-size:11px;font-weight:700;letter-spacing:.025em;text-transform:uppercase}
.k24-topic-paths__grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}
.k24-topic-path{position:relative;display:flex;min-height:168px;flex-direction:column;padding:20px;border:1px solid #dfe5ec;border-radius:16px;background:#fff;color:#122038;text-decoration:none;box-shadow:0 8px 24px rgba(18,32,56,.025);transition:transform .16s ease,border-color .16s ease,box-shadow .16s ease}
.k24-topic-path:hover{transform:translateY(-2px);border-color:#c7d0dc;box-shadow:0 12px 30px rgba(18,32,56,.06)}
.k24-topic-path small{margin-bottom:11px;color:#6e7d91;font-size:10px;font-weight:800;letter-spacing:.07em;text-transform:uppercase}
.k24-topic-path strong{font-size:19px;line-height:1.15;letter-spacing:-.025em}
.k24-topic-path span{margin-top:9px;color:#66758a;font-size:13px;line-height:1.45}
.k24-topic-path em{margin-top:auto;padding-top:17px;color:#122038;font-size:12px;font-style:normal;font-weight:800}
.k24-topic-path--guide{border-top:3px solid #ffd400}
.k24-topic-path--ranking{border-top:3px solid #15233a}
.k24-topic-path--series{border-top:3px solid #d7dee8}
.k24-topic-path--compare{background:#101b2e;color:#fff;border-color:#101b2e}
.k24-topic-path--compare small,.k24-topic-path--compare span{color:#aeb8c7}.k24-topic-path--compare em{color:#ffd400}
.k24-series-topic-paths,.k24-guide-authority{width:min(100%,1280px);margin:58px auto 0}.k24-guide-authority h2{margin:4px 0 20px;font-size:30px;letter-spacing:-.035em}
@media(max-width:960px){.k24-topic-paths__grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:640px){.k24-topic-paths__heading>span{display:none}.k24-topic-paths__grid{grid-template-columns:1fr}.k24-topic-path{min-height:145px;padding:18px}.k24-series-topic-paths,.k24-guide-authority{margin-top:40px}}
@media(prefers-reduced-motion:reduce){.k24-topic-path{transition:none}.k24-topic-path:hover{transform:none}}

/* 5.2.0 — Set Entity SEO / Quick Answers */
.k24-quick-answers{overflow:hidden}
.k24-quick-answers__heading>span{color:#8a94a6;font-size:12px;text-align:right}
.k24-quick-answers__grid{display:grid;grid-template-columns:1fr 1fr;gap:10px}
.k24-quick-answer{border:1px solid #dfe5ee;border-radius:14px;background:#fff;overflow:hidden;transition:border-color .16s ease,box-shadow .16s ease}
.k24-quick-answer[open]{border-color:#cbd4e1;box-shadow:0 8px 26px rgba(15,23,42,.05)}
.k24-quick-answer summary{list-style:none;cursor:pointer;display:flex;align-items:center;justify-content:space-between;gap:16px;padding:17px 18px;font-weight:750;color:#101827;line-height:1.35}
.k24-quick-answer summary::-webkit-details-marker{display:none}
.k24-quick-answer summary span{display:grid;place-items:center;flex:0 0 28px;width:28px;height:28px;border-radius:50%;background:#f3f5f8;color:#111827;font-size:18px;font-weight:500;transition:transform .16s ease,background .16s ease}
.k24-quick-answer[open] summary span{transform:rotate(45deg);background:#ffd500}
.k24-quick-answer__body{padding:0 18px 18px;color:#536076;font-size:15px;line-height:1.7}
.k24-quick-answer__body p{margin:0}
@media (max-width:760px){
  .k24-quick-answers__grid{grid-template-columns:1fr}
  .k24-quick-answers__heading>span{display:none}
  .k24-quick-answer summary{padding:15px 16px}
  .k24-quick-answer__body{padding:0 16px 16px}
}
@media (prefers-reduced-motion:reduce){.k24-quick-answer,.k24-quick-answer summary span{transition:none}}

/* 5.3.0 — K24 Buying Decision Engine */
.k24-buying-decision{position:relative;overflow:hidden;background:linear-gradient(180deg,#fff 0%,#fbfcfe 100%)}
.k24-buying-decision:before{content:"";position:absolute;inset:0 auto 0 0;width:4px;background:#ffd400}
.k24-buying-decision__heading{align-items:end}
.k24-buying-decision__method{color:#8793a6;font-size:11px;font-weight:700;letter-spacing:.03em;text-transform:uppercase}
.k24-buying-decision__verdict{display:grid;grid-template-columns:minmax(0,1.4fr) minmax(260px,.6fr);gap:18px;margin:22px 0 26px;padding:24px;border-radius:18px;background:#101b2e;color:#fff}
.k24-buying-decision__verdict-main>span{display:block;margin-bottom:8px;color:#ffd400;font-size:10px;font-weight:800;letter-spacing:.08em;text-transform:uppercase}
.k24-buying-decision__verdict-main>strong{display:block;font-size:30px;line-height:1.05;letter-spacing:-.035em}
.k24-buying-decision__verdict-main>p{max-width:820px;margin:12px 0 0;color:#c5cfdd;font-size:15px;line-height:1.65}
.k24-buying-decision__tags{display:flex;align-content:flex-start;justify-content:flex-end;flex-wrap:wrap;gap:8px}
.k24-buying-decision__tags span{padding:8px 10px;border:1px solid rgba(255,255,255,.14);border-radius:999px;background:rgba(255,255,255,.06);color:#e9eef6;font-size:11px;font-weight:700}
.k24-buying-decision__editorial{display:grid;grid-template-columns:1fr 1fr;border:1px solid #dfe5ee;border-radius:18px;background:#fff;overflow:hidden}
.k24-buying-decision__editorial article{display:grid;grid-template-columns:44px 1fr;gap:14px;padding:22px 24px;border-right:1px solid #edf0f4;border-bottom:1px solid #edf0f4}
.k24-buying-decision__editorial article:nth-child(2n){border-right:0}
.k24-buying-decision__editorial article:nth-last-child(-n+2){border-bottom:0}
.k24-buying-decision__index{display:grid;place-items:center;width:34px;height:34px;border-radius:10px;background:#f2f5f8;color:#5f6c80;font-size:10px;font-weight:800;letter-spacing:.05em}
.k24-buying-decision__editorial h3{margin:1px 0 8px;color:#101827;font-size:16px;line-height:1.2;letter-spacing:-.02em}
.k24-buying-decision__editorial p{margin:0;color:#536076;font-size:14px;line-height:1.72}
.k24-buying-decision__split{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin-top:16px}
.k24-buying-decision__list{padding:22px;border:1px solid #dfe5ee;border-radius:16px;background:#fff}
.k24-buying-decision__list h3{margin:0 0 14px;font-size:16px;letter-spacing:-.02em}
.k24-buying-decision__list ul{display:grid;gap:10px;margin:0;padding:0;list-style:none}
.k24-buying-decision__list li{position:relative;padding-left:24px;color:#536076;font-size:14px;line-height:1.55}
.k24-buying-decision__list li:before{position:absolute;left:0;top:0;font-weight:900}
.k24-buying-decision__list.is-positive{background:#fffdf2;border-color:#f0df84}
.k24-buying-decision__list.is-positive li:before{content:"✓";color:#8a7200}
.k24-buying-decision__list.is-compare li:before{content:"↔";color:#68758a}
.k24-buying-decision__alternatives{margin-top:18px;padding:22px;border:1px solid #dfe5ee;border-radius:16px;background:#fff}
.k24-buying-decision__alt-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin-top:14px}
.k24-buying-decision__alt{display:flex;min-height:126px;flex-direction:column;padding:16px;border:1px solid #e3e8ef;border-radius:13px;background:#f9fafc;color:#101827;text-decoration:none;transition:transform .16s ease,border-color .16s ease,box-shadow .16s ease}
.k24-buying-decision__alt:hover{transform:translateY(-2px);border-color:#cbd4e1;box-shadow:0 8px 24px rgba(15,23,42,.05)}
.k24-buying-decision__alt>span{color:#758195;font-size:10px;font-weight:800;letter-spacing:.04em;text-transform:uppercase}
.k24-buying-decision__alt>strong{margin:7px 0 12px;font-size:15px;line-height:1.3}
.k24-buying-decision__alt>small{margin-top:auto;color:#637087;font-size:11px}
.k24-buying-decision__methodology{margin-top:16px;border-top:1px solid #e8ecf1;padding-top:14px;color:#69758a;font-size:12px}
.k24-buying-decision__methodology summary{cursor:pointer;color:#314057;font-weight:800}
.k24-buying-decision__methodology p{max-width:980px;margin:10px 0 0;line-height:1.7}
@media(max-width:900px){
  .k24-buying-decision__verdict{grid-template-columns:1fr}
  .k24-buying-decision__tags{justify-content:flex-start}
  .k24-buying-decision__alt-grid{grid-template-columns:1fr 1fr}
}
@media(max-width:680px){
  .k24-buying-decision__method{display:none}
  .k24-buying-decision__verdict{padding:20px;border-radius:15px}
  .k24-buying-decision__verdict-main>strong{font-size:25px}
  .k24-buying-decision__editorial{grid-template-columns:1fr}
  .k24-buying-decision__editorial article,.k24-buying-decision__editorial article:nth-child(2n),.k24-buying-decision__editorial article:nth-last-child(-n+2){border-right:0;border-bottom:1px solid #edf0f4;padding:19px 18px}
  .k24-buying-decision__editorial article:last-child{border-bottom:0}
  .k24-buying-decision__split{grid-template-columns:1fr}
  .k24-buying-decision__alt-grid{grid-template-columns:1fr}
}
@media(prefers-reduced-motion:reduce){.k24-buying-decision__alt{transition:none}.k24-buying-decision__alt:hover{transform:none}}

/* ========================================================================== 
   6.0.0 — UX/UI Foundation + Collector Intelligence
   Hierarchia: decyzja -> fakty -> kolekcjonerskość -> zakup -> analiza ->
   porównanie -> dane techniczne -> FAQ / internal linking.
   Brak zewnętrznych fontów: Inter, jeśli jest lokalnie, następnie system UI.
   ========================================================================== */
.k24-set-single {
    background: #f6f7f9;
}

.k24-set-page--v6 {
    --k24-v6-bg: #f6f7f9;
    --k24-v6-surface: #ffffff;
    --k24-v6-text: #172033;
    --k24-v6-muted: #667085;
    --k24-v6-border: #e4e7ec;
    --k24-v6-soft: #f8fafc;
    --k24-v6-primary: #2563eb;
    --k24-v6-primary-hover: #1d4ed8;
    --k24-v6-success: #15803d;
    --k24-v6-collector: #7c3aed;
    --k24-v6-warning: #d97706;
    --k24-v6-danger: #dc2626;
    --k24-v6-radius: 18px;
    --k24-v6-space-section: clamp(48px, 5vw, 72px);
    width: min(1280px, calc(100vw - 48px));
    margin: 22px auto 80px;
    color: var(--k24-v6-text);
    font-family: Inter, ui-sans-serif, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Helvetica, Arial, sans-serif;
    font-size: 16px;
    line-height: 1.62;
    font-variant-numeric: tabular-nums;
}

.k24-set-single .wp-block-post-content > .k24-set-page--v6,
.k24-set-single .entry-content > .k24-set-page--v6,
.k24-set-single main .k24-set-page--v6 {
    width: min(1280px, calc(100vw - 48px)) !important;
}

.k24-set-page--v6 .k24-set-breadcrumb {
    margin: 0 0 16px;
    gap: 7px;
    color: #667085;
    font-size: 13px;
    font-weight: 600;
}

.k24-set-page--v6 .k24-set-breadcrumb a:focus-visible,
.k24-set-page--v6 a:focus-visible,
.k24-set-page--v6 button:focus-visible,
.k24-set-page--v6 summary:focus-visible {
    outline: 3px solid rgba(37, 99, 235, .28);
    outline-offset: 3px;
    border-radius: 6px;
}

.k24-set-page--v6 .k24-set-hero--v6 {
    grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
    gap: clamp(32px, 4vw, 64px);
    align-items: stretch;
    padding: clamp(24px, 3vw, 40px);
    border: 1px solid var(--k24-v6-border);
    border-radius: 22px;
    background: #fff;
    box-shadow: 0 8px 28px rgba(16, 24, 40, .055);
}

.k24-set-page--v6 .k24-set-hero__media {
    position: relative;
    min-height: 470px;
    padding: clamp(20px, 3.5vw, 46px);
    border: 1px solid #edf0f4;
    border-radius: 17px;
    background: radial-gradient(circle at 50% 34%, #fff 0%, #fbfcfe 46%, #f0f3f7 100%);
}

.k24-set-page--v6 .k24-set-image {
    max-width: 610px;
    max-height: 500px;
    filter: drop-shadow(0 20px 22px rgba(23, 32, 51, .11));
}

.k24-hero-rarity {
    position: absolute;
    left: 18px;
    bottom: 18px;
    display: inline-flex;
    align-items: center;
    min-height: 34px;
    padding: 6px 11px;
    border: 1px solid #ddd6fe;
    border-radius: 999px;
    background: rgba(255, 255, 255, .94);
    color: var(--k24-v6-collector);
    box-shadow: 0 3px 12px rgba(76, 29, 149, .08);
    font-size: 12px;
    font-weight: 800;
}

.k24-set-page--v6 .k24-set-hero__content {
    display: flex;
    min-width: 0;
    flex-direction: column;
    justify-content: center;
}

.k24-set-page--v6 .k24-set-eyebrow,
.k24-set-page--v6 .k24-set-section__eyebrow {
    margin-bottom: 7px;
    color: #475467;
    font-size: 12px;
    font-weight: 800;
    letter-spacing: .075em;
}

.k24-set-page--v6 .k24-set-title {
    max-width: 680px;
    color: var(--k24-v6-text);
    font-size: clamp(32px, 3.1vw, 42px);
    line-height: 1.08;
    letter-spacing: -.035em;
}

.k24-set-subline {
    margin: 12px 0 0;
    color: var(--k24-v6-muted);
    font-size: 15px;
    font-weight: 600;
}

.k24-hero-decision {
    margin-top: 22px;
    padding: 17px 18px;
    border: 1px solid #dbe4f3;
    border-left: 4px solid var(--k24-v6-primary);
    border-radius: 13px;
    background: #f8fbff;
}

.k24-hero-decision > span,
.k24-hero-decision > strong {
    display: block;
}

.k24-hero-decision > span {
    color: var(--k24-v6-muted);
    font-size: 11px;
    font-weight: 800;
    letter-spacing: .07em;
    text-transform: uppercase;
}

.k24-hero-decision > strong {
    margin-top: 2px;
    color: var(--k24-v6-text);
    font-size: 20px;
    line-height: 1.25;
}

.k24-hero-decision > p {
    margin: 6px 0 0;
    color: #475467;
    font-size: 14px;
    line-height: 1.55;
}

.k24-hero-decision--positive,
.k24-hero-decision--strong {
    border-color: #d1e9d8;
    border-left-color: var(--k24-v6-success);
    background: #f6fbf7;
}

.k24-hero-decision--watch,
.k24-hero-decision--caution {
    border-color: #f5dfbe;
    border-left-color: var(--k24-v6-warning);
    background: #fffbf5;
}

.k24-hero-kpis {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 8px;
    margin-top: 16px;
}

.k24-hero-kpis > div {
    min-width: 0;
    padding: 12px 10px;
    border: 1px solid var(--k24-v6-border);
    border-radius: 11px;
    background: #fff;
}

.k24-hero-kpis span,
.k24-hero-kpis strong {
    display: block;
}

.k24-hero-kpis span {
    color: var(--k24-v6-muted);
    font-size: 11px;
    font-weight: 650;
}

.k24-hero-kpis strong {
    margin-top: 2px;
    overflow: hidden;
    color: var(--k24-v6-text);
    font-size: 19px;
    line-height: 1.15;
    text-overflow: ellipsis;
}

.k24-hero-kpis .is-collector {
    border-color: #ddd6fe;
    background: #faf8ff;
}

.k24-hero-kpis .is-collector strong {
    color: var(--k24-v6-collector);
}

.k24-set-page--v6 .k24-set-hero__insights {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 8px;
    margin-top: 8px;
}

.k24-set-page--v6 .k24-set-hero__insight {
    min-height: 74px;
    padding: 10px 12px;
    border: 0;
    border-radius: 11px;
    background: #f8fafc;
}

.k24-set-page--v6 .k24-set-hero__insight span,
.k24-set-page--v6 .k24-set-hero__insight em {
    color: #667085;
}

.k24-set-page--v6 .k24-set-hero__insight strong {
    font-size: 22px;
}

.k24-hero-actions {
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
    margin-top: 20px;
}

.k24-set-page--v6 .k24-button {
    min-height: 46px;
    padding: 10px 17px;
    border-radius: 10px;
    font-size: 14px;
    font-weight: 800;
}

.k24-set-page--v6 .k24-button--primary {
    border: 1px solid var(--k24-v6-primary);
    background: var(--k24-v6-primary);
    color: #fff !important;
}

.k24-set-page--v6 .k24-button--primary:hover {
    border-color: var(--k24-v6-primary-hover);
    background: var(--k24-v6-primary-hover);
}

.k24-button--secondary {
    border: 1px solid #cfd6e0;
    background: #fff;
    color: #344054 !important;
}

.k24-button--secondary:hover {
    border-color: #98a2b3;
    background: #f8fafc;
}

.k24-hero-commerce-note {
    margin: 10px 0 0;
    color: #667085;
    font-size: 12px;
    line-height: 1.5;
}

.k24-set-page--v6 .k24-set-section {
    margin-top: 24px;
    padding: clamp(24px, 3vw, 36px);
    border: 1px solid var(--k24-v6-border);
    border-radius: var(--k24-v6-radius);
    background: #fff;
    box-shadow: none;
}

.k24-set-page--v6 .k24-set-section__heading {
    display: flex;
    gap: 20px;
    align-items: flex-start;
    justify-content: space-between;
    margin-bottom: 22px;
}

.k24-set-page--v6 .k24-set-section__heading h2,
.k24-set-page--v6 .k24-zone-heading strong {
    color: var(--k24-v6-text);
    font-size: clamp(23px, 2.2vw, 29px);
    line-height: 1.18;
    letter-spacing: -.025em;
}

.k24-set-section__lead {
    max-width: 780px;
    margin: 8px 0 0;
    color: #667085;
    font-size: 14px;
    line-height: 1.6;
}

.k24-key-facts {
    margin-top: 24px !important;
}

.k24-fact-grid {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 12px;
}

.k24-fact {
    min-height: 92px;
    padding: 16px;
    border: 1px solid #e9edf2;
    border-radius: 12px;
    background: #fafbfc;
}

.k24-fact span,
.k24-fact strong,
.k24-fact small {
    display: block;
}

.k24-fact span {
    color: #667085;
    font-size: 12px;
    font-weight: 650;
}

.k24-fact strong {
    margin-top: 5px;
    overflow-wrap: anywhere;
    color: #172033;
    font-size: 18px;
    line-height: 1.25;
}

.k24-fact small {
    margin-top: 5px;
    color: var(--k24-v6-collector);
    font-size: 11px;
    font-weight: 800;
}

.k24-set-zone {
    margin-top: var(--k24-v6-space-section);
}

.k24-zone-heading {
    display: grid;
    grid-template-columns: 100px minmax(0, 1fr) minmax(260px, 480px);
    gap: 18px;
    align-items: baseline;
    padding: 0 4px 15px;
    border-bottom: 1px solid #dce1e8;
}

.k24-zone-heading > span {
    color: var(--k24-v6-primary);
    font-size: 12px;
    font-weight: 850;
    letter-spacing: .08em;
    text-transform: uppercase;
}

.k24-zone-heading > strong {
    display: block;
}

.k24-zone-heading > p {
    margin: 0;
    color: #667085;
    font-size: 13px;
    line-height: 1.55;
}

.k24-set-zone > .k24-set-section,
.k24-set-zone > section {
    margin-top: 16px;
}

/* Collector Intelligence */
.k24-collector {
    border-color: #e4ddfb !important;
}

.k24-collector__heading .k24-set-section__eyebrow {
    color: var(--k24-v6-collector);
}

.k24-data-state {
    display: inline-flex;
    align-items: center;
    min-height: 30px;
    padding: 5px 9px;
    border: 1px solid #e4e7ec;
    border-radius: 999px;
    background: #f8fafc;
    color: #667085;
    font-size: 11px;
    font-weight: 750;
    white-space: nowrap;
}

.k24-data-state.is-complete {
    border-color: #cce7d3;
    background: #f2faf4;
    color: #166534;
}

.k24-collector__summary {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 10px;
    margin-bottom: 18px;
}

.k24-collector__summary > div {
    min-height: 82px;
    padding: 13px 15px;
    border: 1px solid #ebecef;
    border-radius: 12px;
    background: #fafbfc;
}

.k24-collector__summary span,
.k24-collector__summary strong {
    display: block;
}

.k24-collector__summary span {
    color: #667085;
    font-size: 11px;
    font-weight: 700;
}

.k24-collector__summary strong {
    margin-top: 3px;
    font-size: 25px;
    line-height: 1.1;
}

.k24-collector__summary .is-unique {
    border-color: #ddd6fe;
    background: #faf8ff;
}

.k24-collector__summary .is-unique strong {
    color: var(--k24-v6-collector);
}

.k24-collector__grid {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 12px;
}

.k24-minifig-card {
    display: grid;
    grid-template-columns: 96px minmax(0, 1fr);
    min-height: 142px;
    overflow: hidden;
    border: 1px solid #e4e7ec;
    border-radius: 14px;
    background: #fff;
}

.k24-minifig-card--unique {
    border-color: #d8ccfa;
    background: linear-gradient(135deg, #fff 0%, #fcfaff 100%);
}

.k24-minifig-card--rare {
    border-color: #f4ddb6;
}

.k24-minifig-card__media {
    display: grid;
    place-items: center;
    min-height: 142px;
    padding: 10px;
    background: #f7f8fa;
}

.k24-minifig-card__media img {
    display: block;
    width: 100%;
    max-width: 82px;
    max-height: 124px;
    object-fit: contain;
}

.k24-minifig-card__media > span {
    color: #98a2b3;
    font-size: 38px;
}

.k24-minifig-card__body {
    min-width: 0;
    padding: 13px 13px 12px;
}

.k24-minifig-card__badges {
    display: flex;
    flex-wrap: wrap;
    gap: 5px;
    margin-bottom: 8px;
}

.k24-rarity-badge,
.k24-qty-badge {
    display: inline-flex;
    align-items: center;
    min-height: 22px;
    padding: 3px 7px;
    border-radius: 999px;
    font-size: 9px;
    font-weight: 850;
    letter-spacing: .05em;
}

.k24-rarity-badge.is-unique {
    background: #ede9fe;
    color: #6d28d9;
}

.k24-rarity-badge.is-rare {
    background: #fff3dc;
    color: #b45309;
}

.k24-rarity-badge.is-standard {
    background: #eef2f6;
    color: #475467;
}

.k24-qty-badge {
    background: #f2f4f7;
    color: #475467;
}

.k24-minifig-card h3 {
    margin: 0;
    color: #172033;
    font-size: 14px;
    line-height: 1.3;
}

.k24-minifig-card p {
    margin: 6px 0 0;
    color: #667085;
    font-size: 12px;
    line-height: 1.45;
}

.k24-minifig-card small {
    display: block;
    margin-top: 7px;
    color: #98a2b3;
    font-size: 10px;
    font-weight: 650;
}

.k24-collector__pending {
    display: flex;
    gap: 7px;
    flex-direction: column;
    padding: 18px;
    border: 1px dashed #c9b8f2;
    border-radius: 12px;
    background: #fbfaff;
}

.k24-collector__pending strong {
    color: #4c1d95;
}

.k24-collector__pending span {
    color: #667085;
    font-size: 13px;
}

/* Commerce path without synthetic prices */
.k24-commerce-path {
    display: flex;
    gap: 24px;
    align-items: center;
    justify-content: space-between;
}

.k24-commerce-path h2 {
    margin: 0;
}

.k24-commerce-path p:last-child {
    max-width: 760px;
    margin: 7px 0 0;
    color: #667085;
    font-size: 14px;
}

/* Technical data: dense but late in the page */
.k24-set-page--v6 .k24-set-specs {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 0 38px;
}

.k24-set-page--v6 .k24-set-specs__row {
    min-height: 49px;
    padding: 11px 0;
}

/* Product cards v2 */
.k24-card__collector-badge {
    position: absolute;
    top: 10px;
    left: 10px;
    z-index: 2;
    display: inline-flex;
    min-height: 27px;
    align-items: center;
    padding: 4px 8px;
    border: 1px solid #ddd6fe;
    border-radius: 999px;
    background: rgba(255, 255, 255, .94);
    color: #6d28d9;
    font-size: 10px;
    font-weight: 850;
}

.k24-card__facts {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 6px;
    margin: auto 0 12px;
}

.k24-card__facts span {
    padding: 7px 8px;
    border-radius: 8px;
    background: #f8fafc;
    color: #667085;
    font-size: 11px;
    line-height: 1.3;
}

.k24-card__facts strong {
    color: #172033;
    font-size: 12px;
}

.k24-set-page--v6 .k24-card__footer {
    min-height: 42px;
}

/* Keep the long analytical modules visually subordinate to core decision blocks. */
.k24-set-zone--analysis .k24-expert-panel,
.k24-set-zone--analysis .k24-commerce-intelligence,
.k24-set-zone--discovery .k24-comparison-panel,
.k24-set-zone--discovery .k24-relationships-panel {
    margin-top: 16px;
}

@media (max-width: 1050px) {
    .k24-set-page--v6,
    .k24-set-single .wp-block-post-content > .k24-set-page--v6,
    .k24-set-single .entry-content > .k24-set-page--v6,
    .k24-set-single main .k24-set-page--v6 {
        width: min(100% - 36px, 980px) !important;
    }

    .k24-set-page--v6 .k24-set-hero--v6 {
        grid-template-columns: minmax(0, .92fr) minmax(0, 1.08fr);
        gap: 28px;
    }

    .k24-set-page--v6 .k24-set-hero__media {
        min-height: 390px;
    }

    .k24-fact-grid,
    .k24-collector__summary {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .k24-collector__grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .k24-zone-heading {
        grid-template-columns: 80px minmax(0, 1fr);
    }

    .k24-zone-heading > p {
        grid-column: 2;
    }
}

@media (max-width: 780px) {
    .k24-set-page--v6,
    .k24-set-single .wp-block-post-content > .k24-set-page--v6,
    .k24-set-single .entry-content > .k24-set-page--v6,
    .k24-set-single main .k24-set-page--v6 {
        width: min(100% - 24px, 720px) !important;
        margin-top: 14px;
    }

    .k24-set-page--v6 .k24-set-hero--v6 {
        grid-template-columns: 1fr;
        gap: 22px;
        padding: 16px;
        border-radius: 17px;
    }

    .k24-set-page--v6 .k24-set-hero__media {
        min-height: 300px;
        padding: 20px;
        border-radius: 13px;
    }

    .k24-set-page--v6 .k24-set-title {
        font-size: clamp(29px, 7.2vw, 38px);
    }

    .k24-hero-kpis {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .k24-set-page--v6 .k24-set-section {
        padding: 22px 18px;
        border-radius: 15px;
    }

    .k24-set-page--v6 .k24-set-section__heading {
        display: block;
    }

    .k24-data-state {
        margin-top: 10px;
    }

    .k24-collector__grid {
        display: flex;
        margin-inline: -18px;
        padding-inline: 18px;
        gap: 10px;
        overflow-x: auto;
        overscroll-behavior-inline: contain;
        scroll-snap-type: x proximity;
    }

    .k24-minifig-card {
        flex: 0 0 min(330px, 82vw);
        scroll-snap-align: start;
    }

    .k24-commerce-path {
        align-items: stretch;
        flex-direction: column;
    }

    .k24-commerce-path .k24-button {
        width: 100%;
    }

    .k24-set-page--v6 .k24-set-specs {
        grid-template-columns: 1fr;
    }
}

@media (max-width: 520px) {
    .k24-set-page--v6,
    .k24-set-single .wp-block-post-content > .k24-set-page--v6,
    .k24-set-single .entry-content > .k24-set-page--v6,
    .k24-set-single main .k24-set-page--v6 {
        width: min(100% - 16px, 520px) !important;
    }

    .k24-set-page--v6 .k24-set-breadcrumb {
        font-size: 12px;
    }

    .k24-set-page--v6 .k24-set-hero__media {
        min-height: 250px;
    }

    .k24-hero-rarity {
        left: 10px;
        bottom: 10px;
    }

    .k24-hero-actions {
        display: grid;
        grid-template-columns: 1fr;
    }

    .k24-hero-actions .k24-button {
        width: 100%;
    }

    .k24-fact-grid,
    .k24-collector__summary {
        grid-template-columns: repeat(2, minmax(0, 1fr));
        gap: 8px;
    }

    .k24-fact {
        min-height: 82px;
        padding: 12px;
    }

    .k24-fact strong {
        font-size: 16px;
    }

    .k24-zone-heading {
        display: block;
        padding-bottom: 12px;
    }

    .k24-zone-heading > strong {
        margin-top: 3px;
        font-size: 22px;
    }

    .k24-zone-heading > p {
        margin-top: 6px;
    }

    .k24-set-zone {
        margin-top: 46px;
    }

    .k24-minifig-card {
        grid-template-columns: 82px minmax(0, 1fr);
        flex-basis: min(310px, 88vw);
    }

    .k24-minifig-card__media {
        min-height: 132px;
    }
}

@media (prefers-reduced-motion: reduce) {
    .k24-set-page--v6 *,
    .k24-card {
        scroll-behavior: auto !important;
        transition: none !important;
    }
}

/* 6.0 catalog collector filters */
.k24-catalog-filters {
    grid-template-columns: minmax(220px, 1.45fr) repeat(3, minmax(140px, .68fr)) minmax(230px, .9fr) auto;
}

.k24-filter-toggles {
    display: grid;
    grid-template-columns: 1fr;
    gap: 6px;
    align-self: stretch;
}

.k24-filter-toggle {
    position: relative;
    display: flex;
    min-height: 33px;
    align-items: center;
    gap: 8px;
    padding: 6px 9px;
    border: 1px solid #e4e7ec;
    border-radius: 9px;
    background: #f8fafc;
    color: #475467;
    cursor: pointer;
    font-size: 11px;
    font-weight: 750;
}

.k24-filter-toggle input {
    width: 15px;
    height: 15px;
    margin: 0;
    accent-color: #2563eb;
}

.k24-filter-toggle.is-collector {
    border-color: #e3dafb;
    background: #fbf9ff;
    color: #6d28d9;
}

.k24-filter-toggle.is-collector input {
    accent-color: #7c3aed;
}

@media (max-width: 1180px) {
    .k24-catalog-filters {
        grid-template-columns: repeat(3, minmax(0, 1fr));
    }
    .k24-filter--search,
    .k24-filter-toggles {
        grid-column: span 2;
    }
}

@media (max-width: 760px) {
    .k24-catalog-filters {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
    .k24-filter--search,
    .k24-filter-toggles {
        grid-column: 1 / -1;
    }
}

@media (max-width: 520px) {
    .k24-catalog-filters {
        grid-template-columns: 1fr;
    }
    .k24-filter--search,
    .k24-filter-toggles {
        grid-column: auto;
    }
}

/* 6.0 series collector overview */
.k24-series-facts {
    grid-template-columns: repeat(3, minmax(0, 1fr));
}
.k24-series-facts > .is-collector {
    border-color: #ddd6fe;
    background: #faf8ff;
}
.k24-series-facts > .is-collector strong {
    color: #7c3aed;
}
@media (max-width: 760px) {
    .k24-series-facts { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}
@media (max-width: 520px) {
    .k24-series-facts { grid-template-columns: 1fr 1fr; }
}

/* ========================================================================== 
   6.0.1 — information hierarchy / deduplication
   One fact = one primary visual location. Unknown values are omitted.
   ========================================================================== */
.k24-set-page--v6 .k24-hero-kpis {
    grid-template-columns: repeat(auto-fit, minmax(118px, 1fr));
}

.k24-set-context {
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
    margin-top: 16px;
}

.k24-set-context > div {
    display: inline-flex;
    min-height: 42px;
    align-items: center;
    gap: 8px;
    padding: 8px 12px;
    border: 1px solid #e4e7ec;
    border-radius: 999px;
    background: #fff;
}

.k24-set-context span {
    color: #667085;
    font-size: 11px;
    font-weight: 700;
}

.k24-set-context strong {
    color: #172033;
    font-size: 12px;
    font-weight: 800;
}

.k24-collector__summary {
    grid-template-columns: repeat(auto-fit, minmax(150px, 1fr));
}

.k24-buying-decision__tags--light {
    justify-content: flex-start;
    margin: 0 0 18px;
}

.k24-buying-decision__tags--light span {
    border-color: #e4e7ec;
    background: #f8fafc;
    color: #475467;
}

.k24-set-zone--analysis .k24-buying-decision {
    margin-top: 16px;
}

/* Old 6.0 key-fact grid is intentionally retired in 6.0.1. */
.k24-set-page--v6 .k24-key-facts {
    display: none !important;
}

@media (max-width: 780px) {
    .k24-set-context {
        gap: 7px;
    }
    .k24-set-context > div {
        min-height: 38px;
        padding: 7px 10px;
    }
}

/* 6.0.3 — Bottom UX Cleanup: one compact discovery cluster, one FAQ, one next-step cluster */
.k24-set-zone--discovery-compact{
    gap:18px;
}
.k24-set-zone--discovery-compact .k24-zone-heading{
    margin-bottom:0;
}
.k24-discovery-sets,
.k24-series-context{
    margin:0;
    padding:20px;
    border:1px solid #e1e6ed;
    border-radius:18px;
    background:#fff;
}
.k24-discovery-sets__heading,
.k24-series-context__heading{
    display:flex;
    align-items:flex-end;
    justify-content:space-between;
    gap:18px;
    margin-bottom:14px;
}
.k24-discovery-sets__heading>div,
.k24-series-context__heading>div{
    min-width:0;
}
.k24-discovery-sets__heading h2,
.k24-series-context__heading h2{
    margin:3px 0 5px;
    font-size:22px;
    line-height:1.15;
    letter-spacing:-.025em;
}
.k24-discovery-sets__heading p:not(.k24-set-section__eyebrow){
    max-width:760px;
    margin:0;
    color:#66758a;
    font-size:12px;
    line-height:1.5;
}
.k24-discovery-sets__heading>a{
    flex:0 0 auto;
    min-height:38px;
    display:inline-flex;
    align-items:center;
    padding:8px 12px;
    border:1px solid #d9e0e8;
    border-radius:10px;
    color:#172033;
    background:#fff;
    text-decoration:none;
    font-size:11px;
    font-weight:850;
}
.k24-discovery-sets__strip{
    display:grid;
    grid-template-columns:repeat(3,minmax(0,1fr));
    gap:10px;
}
.k24-discovery-set{
    display:grid;
    grid-template-columns:112px minmax(0,1fr);
    min-width:0;
    overflow:hidden;
    border:1px solid #e3e8ee;
    border-radius:14px;
    background:#fbfcfe;
}
.k24-discovery-set__image{
    min-height:132px;
    display:grid;
    place-items:center;
    padding:10px;
    background:#f3f6f9;
}
.k24-discovery-set__image img{
    width:100%;
    height:100%;
    max-height:112px;
    object-fit:contain;
}
.k24-discovery-set__body{
    min-width:0;
    display:flex;
    flex-direction:column;
    gap:6px;
    padding:12px;
}
.k24-discovery-set__body>span{
    color:#728096;
    font-size:9px;
    font-weight:700;
}
.k24-discovery-set__title{
    color:#172033;
    text-decoration:none;
    font-size:13px;
    font-weight:800;
    line-height:1.28;
}
.k24-discovery-set__facts{
    display:flex;
    flex-wrap:wrap;
    gap:8px;
    color:#657287;
    font-size:10px;
}
.k24-discovery-set__facts b{color:#172033}
.k24-discovery-set__actions{
    display:flex;
    gap:7px;
    margin-top:auto;
    padding-top:4px;
}
.k24-discovery-set__actions a{
    min-height:31px;
    display:inline-flex;
    align-items:center;
    justify-content:center;
    padding:6px 9px;
    border:1px solid #d8e0e8;
    border-radius:8px;
    color:#172033;
    text-decoration:none;
    font-size:9px;
    font-weight:850;
}
.k24-discovery-set__actions a.is-primary{
    border-color:#f0cb00;
    background:#ffd400;
}
.k24-series-context{
    padding-top:17px;
    padding-bottom:17px;
}
.k24-series-context__heading{
    align-items:center;
    margin-bottom:10px;
}
.k24-series-context__heading h2{
    font-size:18px;
    margin-bottom:0;
}
.k24-series-context__heading>span{
    color:#8995a7;
    font-size:9px;
    font-weight:750;
    letter-spacing:.04em;
    text-transform:uppercase;
}
.k24-series-context__track{
    display:grid;
    grid-template-columns:1fr 1.08fr 1fr;
    gap:8px;
}
.k24-series-context__node{
    position:relative;
    min-width:0;
    display:grid;
    gap:4px;
    padding:12px 13px;
    border:1px solid #e4e9ef;
    border-radius:12px;
    background:#f8fafc;
}
.k24-series-context__node.is-current{
    border-color:#efd34b;
    background:#fffbea;
}
.k24-series-context__node>span{
    color:#77859a;
    font-size:8px;
    font-weight:850;
    letter-spacing:.045em;
    text-transform:uppercase;
}
.k24-series-context__node strong{
    display:block;
    overflow:hidden;
    color:#172033;
    font-size:12px;
    line-height:1.28;
    text-overflow:ellipsis;
}
.k24-series-context__node a{
    color:inherit;
    text-decoration:none;
}
.k24-series-context__node small{
    color:#748196;
    font-size:9px;
}
.k24-series-context__node.is-empty{
    opacity:.72;
}

/* Bottom navigation now complements discovery instead of repeating it. */
.k24-topic-paths{
    margin-top:20px;
}
.k24-topic-paths__grid{
    grid-template-columns:repeat(3,minmax(0,1fr));
}
.k24-topic-path{
    min-height:128px;
    padding:17px;
}
.k24-topic-path small{margin-bottom:8px}
.k24-topic-path strong{font-size:17px}
.k24-topic-path span{font-size:12px;line-height:1.4}
.k24-topic-path em{padding-top:12px}

/* FAQ remains fully crawlable in the DOM, but collapsed by default to reduce scroll. */
.k24-quick-answers{
    margin-top:20px;
}
.k24-quick-answers__grid{
    gap:8px;
}
.k24-quick-answer summary{
    min-height:58px;
    padding:14px 16px;
}
.k24-quick-answer__body{
    padding:0 16px 16px;
    font-size:14px;
    line-height:1.6;
}

@media(max-width:980px){
    .k24-discovery-sets__strip{grid-template-columns:1fr}
    .k24-discovery-set{grid-template-columns:150px minmax(0,1fr)}
    .k24-discovery-set__image{min-height:126px}
    .k24-topic-paths__grid{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media(max-width:680px){
    .k24-discovery-sets,.k24-series-context{padding:16px}
    .k24-discovery-sets__heading,.k24-series-context__heading{align-items:flex-start;flex-direction:column}
    .k24-discovery-sets__heading>a{width:100%;justify-content:center}
    .k24-discovery-sets__strip{
        display:flex;
        gap:10px;
        overflow-x:auto;
        padding:0 1px 8px;
        scroll-snap-type:x proximity;
        scrollbar-width:thin;
    }
    .k24-discovery-set{
        flex:0 0 min(86vw,390px);
        grid-template-columns:116px minmax(0,1fr);
        scroll-snap-align:start;
    }
    .k24-series-context__heading>span{display:none}
    .k24-series-context__track{grid-template-columns:1fr}
    .k24-series-context__node{padding:11px 12px}
    .k24-topic-paths__grid{grid-template-columns:1fr}
    .k24-topic-path{min-height:0}
    .k24-quick-answers__grid{grid-template-columns:1fr}
}


/* 6.0.4 — human-first score clarity and semantic color coding. */
.k24-expert-scoreboard{
    --k24-score-accent:#667085;
    --k24-score-soft:#f7f8fa;
    --k24-score-border:#dfe3e8;
    color:#172033;
    border:1px solid var(--k24-score-border);
    background:linear-gradient(180deg,var(--k24-score-soft) 0%,#fff 78%);
    box-shadow:0 10px 28px rgba(15,23,42,.06);
}
.k24-expert-scoreboard--excellent{--k24-score-accent:#15803d;--k24-score-soft:#eefbf3;--k24-score-border:#b9e5c8}
.k24-expert-scoreboard--good{--k24-score-accent:#2563eb;--k24-score-soft:#eef5ff;--k24-score-border:#bfd2ff}
.k24-expert-scoreboard--consider{--k24-score-accent:#b45309;--k24-score-soft:#fff8e8;--k24-score-border:#f3d6a4}
.k24-expert-scoreboard--niche{--k24-score-accent:#b42318;--k24-score-soft:#fff4f2;--k24-score-border:#f1c5bf}
.k24-expert-scoreboard--neutral{--k24-score-accent:#475467;--k24-score-soft:#f8fafc;--k24-score-border:#dfe5ec}
.k24-expert-scoreboard__label{color:var(--k24-score-accent);font-size:10px;font-weight:900;letter-spacing:.08em;text-transform:uppercase}
.k24-expert-scoreboard__value{color:var(--k24-score-accent)}
.k24-expert-scoreboard__grade{color:#172033}
.k24-expert-scoreboard>p{color:#59677a;font-size:12px;line-height:1.62}
.k24-expert-scoreboard .k24-expert-meter{background:#e9edf2}
.k24-expert-scoreboard .k24-expert-meter::-webkit-progress-bar{background:#e9edf2;border-radius:999px}
.k24-expert-scoreboard .k24-expert-meter::-webkit-progress-value{background:var(--k24-score-accent);border-radius:999px}
.k24-expert-scoreboard .k24-expert-meter::-moz-progress-bar{background:var(--k24-score-accent);border-radius:999px}

/* Dimensions use stable semantic accents, so each block is readable at a glance. */
.k24-expert-dimension:nth-child(1){border-top:3px solid #7c3aed;background:#faf7ff}
.k24-expert-dimension:nth-child(2){border-top:3px solid #15803d;background:#f6fbf7}
.k24-expert-dimension:nth-child(3){border-top:3px solid #2563eb;background:#f7f9ff}
.k24-expert-dimension:nth-child(4){border-top:3px solid #0f766e;background:#f5fbfa}
.k24-expert-dimension:nth-child(1) .k24-expert-meter::-webkit-progress-value{background:#7c3aed}
.k24-expert-dimension:nth-child(1) .k24-expert-meter::-moz-progress-bar{background:#7c3aed}
.k24-expert-dimension:nth-child(2) .k24-expert-meter::-webkit-progress-value{background:#15803d}
.k24-expert-dimension:nth-child(2) .k24-expert-meter::-moz-progress-bar{background:#15803d}
.k24-expert-dimension:nth-child(3) .k24-expert-meter::-webkit-progress-value{background:#2563eb}
.k24-expert-dimension:nth-child(3) .k24-expert-meter::-moz-progress-bar{background:#2563eb}
.k24-expert-dimension:nth-child(4) .k24-expert-meter::-webkit-progress-value{background:#0f766e}
.k24-expert-dimension:nth-child(4) .k24-expert-meter::-moz-progress-bar{background:#0f766e}
.k24-expert__topline{align-items:flex-start}
.k24-expert__badges,.k24-expert-scoreboard__meta,.k24-expert-method,.k24-buying-decision__methodology{display:none!important}

/* 6.1.0 — Product Intelligence: useful visual analytics without dashboard clutter. */
.k24-collector__overview{display:grid;grid-template-columns:1fr;gap:20px;align-items:center;margin:20px 0 24px}
.k24-collector__overview.has-donut{grid-template-columns:170px minmax(0,1fr)}
.k24-minifig-donut{width:156px;aspect-ratio:1;border-radius:50%;display:grid;place-items:center;position:relative;background:conic-gradient(#7c3aed 0 var(--k24-unique),#d97706 var(--k24-unique) calc(var(--k24-unique) + var(--k24-rare)),#e2e8f0 calc(var(--k24-unique) + var(--k24-rare)) 100%)}
.k24-minifig-donut:after{content:"";position:absolute;inset:18px;border-radius:50%;background:#fff;box-shadow:inset 0 0 0 1px #e4e7ec}
.k24-minifig-donut>div{position:relative;z-index:1;text-align:center;display:grid;gap:2px}
.k24-minifig-donut strong{font-size:34px;line-height:1;color:#172033;letter-spacing:-.04em}
.k24-minifig-donut span{font-size:12px;color:#667085;font-weight:700}
.k24-collector__summary{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}
.k24-collector__summary>div{min-height:86px;padding:16px;border:1px solid #e4e7ec;border-radius:12px;background:#fff;display:flex;flex-direction:column;justify-content:center;gap:4px}
.k24-collector__summary span{font-size:12px;color:#667085;font-weight:700}
.k24-collector__summary strong{font-size:24px;color:#172033}
.k24-collector__summary small{font-size:11px;color:#667085}
.k24-collector__summary .is-unique{border-color:#d8b4fe;background:#faf5ff}
.k24-collector__summary .is-unique strong{color:#7c3aed}
.k24-collector__summary .is-rare{border-color:#fde68a;background:#fffbeb}
.k24-collector__summary .is-rare strong{color:#b45309}
.k24-rarity-ladder{margin-top:10px;display:flex;align-items:center;justify-content:space-between;gap:10px}
.k24-rarity-ladder>span{font-size:11px;color:#667085;font-weight:700}
.k24-rarity-ladder>div{display:flex;gap:3px}
.k24-rarity-ladder i{width:7px;height:7px;border-radius:99px;background:#e2e8f0}
.k24-rarity-ladder i.is-on{background:#7c3aed}
.k24-minifig-card--rare .k24-rarity-ladder i.is-on{background:#d97706}
.k24-minifig-card--standard .k24-rarity-ladder i.is-on{background:#2563eb}

.k24-product-intel{overflow:hidden}
.k24-product-intel__facts{list-style:none;margin:22px 0 0;padding:0;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
.k24-product-intel__facts li{position:relative;margin:0;padding:16px 18px 16px 44px;border:1px solid #dbe4f0;border-radius:12px;background:#f8fafc;color:#25324b;line-height:1.5}
.k24-product-intel__facts li:before{content:"✓";position:absolute;left:16px;top:15px;width:20px;height:20px;border-radius:50%;display:grid;place-items:center;background:#dcfce7;color:#15803d;font-size:12px;font-weight:900}
.k24-product-intel__profile{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;margin-top:20px}
.k24-profile-meter{padding:16px 18px;border:1px solid #e4e7ec;border-radius:12px;background:#fff}
.k24-profile-meter>div{display:flex;justify-content:space-between;gap:12px;align-items:baseline;margin-bottom:10px}
.k24-profile-meter span{font-size:12px;color:#475467;font-weight:800}
.k24-profile-meter strong{font-size:13px;color:#172033}
.k24-profile-meter progress{width:100%;height:8px;border:0;border-radius:99px;overflow:hidden;background:#e9eef5}
.k24-profile-meter progress::-webkit-progress-bar{background:#e9eef5;border-radius:99px}
.k24-profile-meter progress::-webkit-progress-value{background:#2563eb;border-radius:99px}
.k24-profile-meter progress::-moz-progress-bar{background:#2563eb;border-radius:99px}
.k24-profile-meter small{display:block;margin-top:8px;color:#667085;font-size:11px;line-height:1.4}
.k24-product-intel__inventory{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(280px,.85fr);gap:18px;margin-top:22px}
.k24-inventory-stats{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
.k24-inventory-stats>div{padding:17px;border:1px solid #e4e7ec;border-radius:12px;background:#fff;display:flex;flex-direction:column;gap:5px}
.k24-inventory-stats span{font-size:12px;color:#667085;font-weight:700}
.k24-inventory-stats strong{font-size:25px;line-height:1;color:#172033}
.k24-inventory-stats .is-rare{background:#fffaf0;border-color:#f8d68a}
.k24-inventory-stats .is-rare strong{color:#b45309}
.k24-color-profile{padding:17px;border:1px solid #e4e7ec;border-radius:12px;background:#fff}
.k24-color-profile h3{margin:0 0 14px;font-size:17px;color:#172033}
.k24-color-profile__bar{height:18px;border-radius:99px;overflow:hidden;display:flex;background:#e2e8f0;box-shadow:inset 0 0 0 1px rgba(15,23,42,.05)}
.k24-color-profile__bar span{display:block;width:var(--k24-share);background:var(--k24-color);min-width:2px}
.k24-color-profile__legend{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px 12px;margin-top:14px}
.k24-color-profile__legend>span{display:grid;grid-template-columns:11px minmax(0,1fr) auto;gap:7px;align-items:center;font-size:11px;color:#475467}
.k24-color-profile__legend i{width:11px;height:11px;border-radius:3px;background:var(--k24-color);box-shadow:inset 0 0 0 1px rgba(15,23,42,.12)}
.k24-color-profile__legend small{font-size:10px;color:#98a2b3}
.k24-rare-parts{margin-top:24px;padding-top:22px;border-top:1px solid #e4e7ec}
.k24-rare-parts__head{display:flex;align-items:end;justify-content:space-between;gap:18px;margin-bottom:14px}
.k24-rare-parts__head h3{margin:0;font-size:20px;color:#172033}
.k24-rare-parts__head p{margin:0;color:#667085;font-size:12px}
.k24-rare-parts__grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}
.k24-rare-part{display:grid;grid-template-columns:72px minmax(0,1fr);gap:12px;align-items:center;padding:12px;border:1px solid #e4e7ec;border-radius:12px;background:#fff}
.k24-rare-part img{width:72px;height:58px;object-fit:contain;background:#f8fafc;border-radius:8px}
.k24-rare-part>div{min-width:0;display:grid;gap:3px}
.k24-rare-part strong{font-size:12px;line-height:1.35;color:#172033}
.k24-rare-part span{font-size:11px;color:#667085}
.k24-rare-part small{font-size:10px;color:#7c3aed;font-weight:700}

@media (max-width:900px){
  .k24-collector__overview.has-donut{grid-template-columns:130px minmax(0,1fr)}
  .k24-minifig-donut{width:120px}.k24-minifig-donut:after{inset:14px}.k24-minifig-donut strong{font-size:28px}
  .k24-collector__summary{grid-template-columns:repeat(2,minmax(0,1fr))}
  .k24-product-intel__profile{grid-template-columns:1fr}
  .k24-product-intel__inventory{grid-template-columns:1fr}
  .k24-rare-parts__grid{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media (max-width:640px){
  .k24-collector__overview.has-donut{grid-template-columns:1fr}.k24-minifig-donut{margin:0 auto}
  .k24-product-intel__facts{grid-template-columns:1fr}
  .k24-inventory-stats{grid-template-columns:repeat(2,minmax(0,1fr))}
  .k24-rare-parts__grid{display:flex;overflow-x:auto;scroll-snap-type:x mandatory;padding-bottom:5px}
  .k24-rare-part{min-width:270px;scroll-snap-align:start}
  .k24-rare-parts__head{align-items:start;flex-direction:column;gap:4px}
}
.k24-expert-dimensions{grid-template-columns:repeat(3,minmax(0,1fr))}
.k24-expert-dimension:nth-child(3){border-top-color:#0f766e;background:#f5fbfa}
.k24-expert-dimension:nth-child(3) .k24-expert-meter::-webkit-progress-value{background:#0f766e}
.k24-expert-dimension:nth-child(3) .k24-expert-meter::-moz-progress-bar{background:#0f766e}
@media(max-width:900px){.k24-expert-dimensions{grid-template-columns:1fr}}

/* 6.2.0 — Homepage 2.0: intent-first discovery, less technical copy, no empty commerce promises. */
.k24-home-shell--v2 { margin-bottom: 68px; }
.k24-home-hero--v2 {
    grid-template-columns: minmax(0,1.5fr) minmax(300px,.5fr);
    background:
        radial-gradient(circle at 88% 14%, rgba(255,213,0,.24), transparent 24%),
        radial-gradient(circle at 72% 88%, rgba(124,58,237,.07), transparent 26%),
        linear-gradient(135deg,#fff 0%,#f8fafc 100%);
}
.k24-home-hero__panel--v2 .is-collector {
    border-color: #ddd6fe;
    background: linear-gradient(145deg,#fff 0%,#f5f3ff 100%);
}
.k24-home-hero__panel--v2 .is-collector strong { color: #6d28d9; }

.k24-home-paths {
    display: grid;
    grid-template-columns: repeat(5,minmax(0,1fr));
    gap: 12px;
    margin-top: 16px;
}
.k24-home-path {
    position: relative;
    display: flex;
    min-height: 174px;
    flex-direction: column;
    overflow: hidden;
    padding: 18px;
    border: 1px solid var(--k24-home-border);
    border-radius: 18px;
    background: #fff;
    color: var(--k24-home-ink);
    text-decoration: none;
    transition: transform .16s ease, border-color .16s ease, box-shadow .16s ease;
}
.k24-home-path:hover { transform: translateY(-2px); border-color: #cfd4dc; box-shadow: 0 12px 28px rgba(16,24,40,.07); }
.k24-home-path__mark {
    display: grid;
    width: 34px;
    height: 34px;
    place-items: center;
    margin-bottom: 18px;
    border-radius: 10px;
    background: #f2f4f7;
    font-size: 17px;
    font-weight: 900;
}
.k24-home-path small { color: var(--k24-home-muted); font-size: 10px; font-weight: 800; letter-spacing: .07em; text-transform: uppercase; }
.k24-home-path strong { margin-top: 2px; font-size: 17px; line-height: 1.22; }
.k24-home-path em { margin-top: 8px; color: var(--k24-home-muted); font-size: 11px; font-style: normal; line-height: 1.5; }
.k24-home-path.is-collector .k24-home-path__mark { background: #f3e8ff; color: #7c3aed; }
.k24-home-path.is-scale .k24-home-path__mark { background: #eff6ff; color: #2563eb; }
.k24-home-path.is-guide .k24-home-path__mark { background: #ecfdf3; color: #15803d; }
.k24-home-path.is-compare .k24-home-path__mark { background: #fff7ed; color: #c2410c; }
.k24-home-path.is-new .k24-home-path__mark { background: #fffbea; color: #8a7100; }

.k24-home-section__head > div { min-width: 0; }
.k24-home-section__lead {
    max-width: 760px;
    margin: 8px 0 0;
    color: var(--k24-home-muted);
    font-size: 13px;
    line-height: 1.55;
}

.k24-home-featured-grid { display: grid; grid-template-columns: repeat(4,minmax(0,1fr)); gap: 14px; }
.k24-home-featured-item { position: relative; min-width: 0; }
.k24-home-featured-item .k24-card { height: 100%; }
.k24-home-featured-reason {
    position: absolute;
    z-index: 4;
    top: 10px;
    left: 10px;
    max-width: calc(100% - 20px);
    padding: 6px 9px;
    border: 1px solid #ddd6fe;
    border-radius: 999px;
    background: rgba(250,245,255,.96);
    color: #6d28d9;
    font-size: 10px;
    font-weight: 850;
    line-height: 1.2;
    box-shadow: 0 4px 14px rgba(76,29,149,.08);
}
.k24-home-featured-item .k24-card__collector-badge { top: 42px; }

.k24-home-section--series {
    padding: clamp(24px,3vw,34px);
    border: 1px solid var(--k24-home-border);
    border-radius: 24px;
    background: #f8fafc;
}
.k24-home-section--series .k24-home-series-card { background: rgba(255,255,255,.96); }

.k24-home-discovery-grid { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 14px; }
.k24-home-discovery-card {
    display: flex;
    min-height: 208px;
    flex-direction: column;
    padding: 22px;
    border: 1px solid var(--k24-home-border);
    border-radius: 20px;
    background: #fff;
    color: var(--k24-home-ink);
    text-decoration: none;
    transition: transform .16s ease, border-color .16s ease, box-shadow .16s ease;
}
.k24-home-discovery-card:hover { transform: translateY(-2px); border-color: #cfd4dc; box-shadow: 0 12px 30px rgba(16,24,40,.065); }
.k24-home-discovery-card small { color: #667085; font-size: 10px; font-weight: 850; letter-spacing: .08em; text-transform: uppercase; }
.k24-home-discovery-card strong { margin-top: 7px; font-size: 21px; line-height: 1.18; letter-spacing: -.025em; }
.k24-home-discovery-card span { margin-top: 10px; color: var(--k24-home-muted); font-size: 12px; line-height: 1.6; }
.k24-home-discovery-card em { margin-top: auto; padding-top: 18px; font-size: 12px; font-style: normal; font-weight: 850; }
.k24-home-discovery-card.is-ranking { border-top: 3px solid #2563eb; }
.k24-home-discovery-card.is-guide { border-top: 3px solid #7c3aed; }

.k24-home-value {
    display: grid;
    grid-template-columns: minmax(260px,.8fr) minmax(0,1.2fr);
    gap: clamp(28px,5vw,72px);
    align-items: center;
    margin-top: 54px;
    padding: clamp(28px,4vw,48px);
    border-radius: 24px;
    background: #101828;
    color: #fff;
}
.k24-home-value .k24-home-kicker { color: #98a2b3; }
.k24-home-value h2 { margin: 0; font-size: clamp(28px,3.2vw,42px); line-height: 1.08; letter-spacing: -.035em; }
.k24-home-value > div > p:last-child { max-width: 540px; margin: 12px 0 0; color: #d0d5dd; font-size: 14px; line-height: 1.65; }
.k24-home-value__points { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 10px; }
.k24-home-value__points span { display: grid; min-height: 126px; align-content: start; padding: 17px; border: 1px solid rgba(255,255,255,.1); border-radius: 16px; background: rgba(255,255,255,.045); }
.k24-home-value__points b { color: #ffd500; font-size: 17px; }
.k24-home-value__points strong { margin-top: 12px; font-size: 14px; }
.k24-home-value__points em { margin-top: 4px; color: #98a2b3; font-size: 11px; font-style: normal; line-height: 1.45; }

@media (max-width: 1080px) {
    .k24-home-paths { grid-template-columns: repeat(3,minmax(0,1fr)); }
    .k24-home-featured-grid { grid-template-columns: repeat(2,minmax(0,1fr)); }
}
@media (max-width: 820px) {
    .k24-home-discovery-grid { grid-template-columns: 1fr; }
    .k24-home-discovery-card { min-height: 0; }
    .k24-home-value { grid-template-columns: 1fr; }
}
@media (max-width: 680px) {
    .k24-home-paths {
        display: flex;
        margin-inline: -10px;
        padding: 0 10px 4px;
        overflow-x: auto;
        scroll-snap-type: x proximity;
        scrollbar-width: none;
    }
    .k24-home-paths::-webkit-scrollbar { display: none; }
    .k24-home-path { min-width: min(78vw,280px); min-height: 158px; scroll-snap-align: start; }
    .k24-home-featured-grid { grid-template-columns: repeat(2,minmax(0,1fr)); }
    .k24-home-value__points { grid-template-columns: 1fr; }
    .k24-home-value__points span { min-height: 0; }
}
@media (max-width: 500px) {
    .k24-home-featured-grid { grid-template-columns: 1fr; }
    .k24-home-featured-item .k24-card { height: auto; }
}


/* 6.2.1 — Homepage card polish: one badge, full-set image framing. */
.k24-home-featured-item .k24-card__collector-badge {
    display: none !important;
}

.k24-home-featured-item .k24-card__media,
.k24-home-set-grid .k24-card__media {
    padding: clamp(20px, 2vw, 28px);
}

.k24-home-featured-item .k24-card__image,
.k24-home-set-grid .k24-card__image {
    width: 90%;
    height: 90%;
    max-width: 90%;
    max-height: 90%;
    object-fit: contain;
    object-position: center;
    transform: none;
}

.k24-home-featured-item .k24-card:hover .k24-card__image,
.k24-home-set-grid .k24-card:hover .k24-card__image {
    transform: none;
}

@media (max-width: 680px) {
    .k24-home-featured-item .k24-card__media,
    .k24-home-set-grid .k24-card__media {
        padding: 18px;
    }
    .k24-home-featured-item .k24-card__image,
    .k24-home-set-grid .k24-card__image {
        width: 92%;
        height: 92%;
        max-width: 92%;
        max-height: 92%;
    }
}

/* =========================================================
 * 6.4 — Guides 2.0
 * ======================================================= */
.k24-guides--v2 .k24-guide-hero,
.k24-guide-page--v2 .k24-guide-hero {
    background:linear-gradient(135deg,#ffffff 0%,#fbfcff 70%,#f5f8ff 100%);
}
.k24-guides--v2 .k24-guide-principles {
    margin-bottom:26px;
}
.k24-guides--v2 .k24-guide-principles > div {
    min-height:132px;
    display:flex;
    flex-direction:column;
    justify-content:center;
}
.k24-guide-hubcard {
    min-height:310px;
}
.k24-guide-hubcard__top em {
    padding:6px 9px;
    border-radius:999px;
    background:#f3f5f8;
    color:#5f6c7d;
}
.k24-guide-hubcard__audience {
    margin-top:18px;
    padding:14px 15px;
    border-radius:12px;
    background:#f7f9fc;
    border:1px solid #e7ebf1;
}
.k24-guide-hubcard__audience small {
    display:block;
    margin-bottom:5px;
    color:#68768a;
    font-size:10px;
    font-weight:800;
    letter-spacing:.06em;
    text-transform:uppercase;
}
.k24-guide-hubcard__audience span {
    display:block;
    color:#27364b;
    font-size:13px;
    line-height:1.55;
}
.k24-guide-hubcard__foot {
    justify-content:flex-end;
}
.k24-guide-hubcard__foot a,
.k24-guide-card__actions a:first-child {
    display:inline-flex;
    align-items:center;
    min-height:42px;
    padding:0 14px;
    border-radius:10px;
    background:#ffd400;
    color:#111d31;
}
.k24-guide-next {
    display:grid;
    grid-template-columns:minmax(0,1fr) auto;
    gap:28px;
    align-items:center;
    margin-top:28px;
    padding:28px 30px;
    border:1px solid #dce4ee;
    border-radius:18px;
    background:#fff;
}
.k24-guide-next h2 {
    margin:0;
    font-size:28px;
    letter-spacing:-.03em;
}
.k24-guide-next p:not(.k24-guide-eyebrow) {
    margin:8px 0 0;
    color:#69778b;
    line-height:1.6;
}
.k24-guide-next > a {
    display:inline-flex;
    align-items:center;
    min-height:44px;
    padding:0 16px;
    border:1px solid #cfd7e2;
    border-radius:10px;
    color:#17243a;
    font-size:13px;
    font-weight:800;
    text-decoration:none;
    white-space:nowrap;
}
.k24-guide-list-head {
    display:grid;
    grid-template-columns:minmax(0,1fr) minmax(260px,430px);
    gap:30px;
    align-items:end;
    margin:38px 0 18px;
    padding-bottom:18px;
    border-bottom:1px solid #e3e8ef;
}
.k24-guide-list-head h2 {
    margin:0;
    font-size:34px;
    letter-spacing:-.035em;
}
.k24-guide-list-head > p {
    margin:0;
    color:#718096;
    font-size:14px;
    line-height:1.65;
}
.k24-guide-page--v2 .k24-guide-list {
    gap:16px;
    margin-top:0;
}
.k24-guide-card--v2 {
    grid-template-columns:300px minmax(0,1fr);
    border-radius:20px;
    box-shadow:0 8px 24px rgba(17,31,52,.035);
}
.k24-guide-card--v2 .k24-guide-card__image {
    min-height:300px;
    padding:26px;
    background:#f7f9fc;
}
.k24-guide-card--v2 .k24-guide-card__image img,
.k24-guide-card--v2 .k24-guide-placeholder {
    width:100%;
    height:248px;
    object-fit:contain;
}
.k24-guide-card--v2 .k24-guide-card__body {
    padding:26px 28px;
}
.k24-guide-card__topline {
    display:flex;
    flex-wrap:wrap;
    gap:10px 14px;
    align-items:center;
    justify-content:space-between;
}
.k24-guide-card__fit {
    display:inline-flex;
    align-items:center;
    min-height:28px;
    padding:0 10px;
    border-radius:999px;
    background:#eef4ff;
    color:#315c9d;
    font-size:11px;
    font-weight:800;
}
.k24-guide-card--star_wars .k24-guide-card__fit,
.k24-guide-card--collector .k24-guide-card__fit {
    background:#f4efff;
    color:#6f3dc6;
}
.k24-guide-card--technic .k24-guide-card__fit {
    background:#fff5dc;
    color:#9a5f00;
}
.k24-guide-card--display .k24-guide-card__fit {
    background:#eef8f1;
    color:#267340;
}
.k24-guide-card--recent .k24-guide-card__fit {
    background:#edf8fb;
    color:#187088;
}
.k24-guide-card--v2 h2 {
    margin:11px 0 14px;
    font-size:27px;
}
.k24-guide-card--v2 .k24-guide-card__facts {
    margin-top:0;
}
.k24-guide-card--v2 .k24-guide-card__facts span {
    padding:7px 10px;
    border:1px solid #e3e8ef;
    background:#fff;
    color:#526175;
}
.k24-guide-card__decision {
    display:grid;
    grid-template-columns:minmax(0,1.1fr) minmax(240px,.9fr);
    gap:12px;
    margin-top:18px;
}
.k24-guide-card--v2 .k24-guide-card__why,
.k24-guide-card__tradeoff {
    margin:0;
    padding:15px 16px;
    border:1px solid #e4e9f0;
    border-radius:13px;
    background:#fbfcfe;
}
.k24-guide-card--v2 .k24-guide-card__why strong,
.k24-guide-card__tradeoff strong {
    display:block;
    margin-bottom:9px;
    color:#1d2a3d;
    font-size:11px;
    font-weight:800;
    letter-spacing:.045em;
    text-transform:uppercase;
}
.k24-guide-card--v2 .k24-guide-card__why ul {
    display:grid;
    gap:6px;
    margin:0;
}
.k24-guide-card--v2 .k24-guide-card__why li {
    position:relative;
    padding:0 0 0 16px;
    border:0;
    border-radius:0;
    color:#56657a;
    font-size:13px;
    line-height:1.45;
}
.k24-guide-card--v2 .k24-guide-card__why li::before {
    content:'✓';
    position:absolute;
    left:0;
    top:0;
    color:#15803d;
    font-weight:900;
}
.k24-guide-card__tradeoff {
    background:#fffaf0;
    border-color:#f1dfb4;
}
.k24-guide-card__tradeoff p {
    margin:0;
    color:#6a5a36;
    font-size:13px;
    line-height:1.5;
}
.k24-guide-card--v2 .k24-guide-card__actions {
    margin-top:18px;
}
.k24-guide-card--v2 .k24-guide-card__actions a.is-secondary {
    display:inline-flex;
    align-items:center;
    min-height:42px;
    color:#5f6f84;
}
.k24-guide-page--v2 .k24-guide-how {
    grid-template-columns:1fr 1fr;
}
.k24-guide-page--v2 .k24-guide-how > div {
    min-height:120px;
}
.k24-guide-page--v2 .k24-guide-hold a {
    color:#ffd400;
    font-weight:800;
}
@media (max-width:980px) {
    .k24-guide-card--v2 { grid-template-columns:240px minmax(0,1fr); }
    .k24-guide-card--v2 .k24-guide-card__image { min-height:270px; padding:18px; }
    .k24-guide-card--v2 .k24-guide-card__image img,
    .k24-guide-card--v2 .k24-guide-placeholder { height:225px; }
    .k24-guide-card__decision { grid-template-columns:1fr; }
}
@media (max-width:760px) {
    .k24-guide-next,
    .k24-guide-list-head { grid-template-columns:1fr; align-items:start; }
    .k24-guide-next > a { justify-self:start; }
    .k24-guide-card--v2 { grid-template-columns:1fr; }
    .k24-guide-card--v2 .k24-guide-card__image {
        min-height:250px;
        border-right:0;
        border-bottom:1px solid #edf0f4;
    }
    .k24-guide-card--v2 .k24-guide-card__image img,
    .k24-guide-card--v2 .k24-guide-placeholder { height:220px; }
    .k24-guide-card__topline { align-items:flex-start; }
    .k24-guide-page--v2 .k24-guide-how { grid-template-columns:1fr; }
}
@media (max-width:520px) {
    .k24-guide-card--v2 .k24-guide-card__body { padding:20px; }
    .k24-guide-card--v2 h2 { font-size:22px; }
    .k24-guide-list-head h2 { font-size:28px; }
    .k24-guide-next { padding:22px 20px; }
}

/* 6.4.1 — Series Visual Upgrade: image-led theme tiles, full-set framing, subtle brick language. */
.k24-home-series-grid--visual{
    gap:14px;
}
.k24-home-series-card--visual{
    position:relative;
    display:block;
    min-height:0;
    overflow:hidden;
    padding:0;
    border:1px solid #dde2ea;
    border-radius:20px;
    background:#fff;
    box-shadow:0 1px 2px rgba(16,24,40,.025);
    isolation:isolate;
}
.k24-home-series-card--visual:hover{
    transform:translateY(-3px);
    border-color:#cbd2dc;
    box-shadow:0 16px 34px rgba(16,24,40,.09);
}
.k24-home-series-card__media{
    position:relative;
    display:grid;
    aspect-ratio:4/3;
    place-items:center;
    overflow:hidden;
    padding:16px 16px 10px;
    background:
        radial-gradient(circle at 88% 14%,rgba(255,213,0,.20),transparent 22%),
        radial-gradient(circle at 12% 86%,rgba(37,99,235,.07),transparent 22%),
        linear-gradient(145deg,#fff 0%,#f4f6f9 100%);
}
.k24-home-series-card__media::after{
    content:"";
    position:absolute;
    inset:auto 0 0;
    height:40%;
    pointer-events:none;
    background:linear-gradient(to top,rgba(255,255,255,.46),transparent);
}
.k24-home-series-card__image{
    position:relative;
    z-index:1;
    width:100%;
    height:100%;
    max-width:100%;
    max-height:100%;
    object-fit:contain !important;
    object-position:center;
    transform:none !important;
    filter:drop-shadow(0 9px 12px rgba(16,24,40,.08));
    transition:transform .18s ease,filter .18s ease;
}
.k24-home-series-card--visual:hover .k24-home-series-card__image{
    transform:translateY(-2px) scale(1.012) !important;
    filter:drop-shadow(0 12px 16px rgba(16,24,40,.11));
}
.k24-home-series-card__count{
    position:absolute;
    z-index:4;
    top:12px;
    left:12px;
    margin:0 !important;
    padding:6px 9px;
    border:1px solid rgba(208,213,221,.9);
    border-radius:999px;
    background:rgba(255,255,255,.92);
    box-shadow:0 3px 10px rgba(16,24,40,.05);
    color:#475467 !important;
    font-size:10px !important;
    font-weight:850 !important;
    line-height:1 !important;
    backdrop-filter:blur(6px);
}
.k24-home-series-card__studs{
    position:absolute;
    z-index:3;
    top:12px;
    right:12px;
    display:flex;
    gap:5px;
    opacity:.64;
}
.k24-home-series-card__studs b{
    display:block;
    width:8px;
    height:8px;
    border:1px solid rgba(16,24,40,.12);
    border-radius:50%;
    background:#ffd500;
    box-shadow:inset 0 -1px 0 rgba(16,24,40,.10),0 1px 2px rgba(16,24,40,.08);
}
.k24-home-series-card__studs b:nth-child(2){background:#2563eb}
.k24-home-series-card__studs b:nth-child(3){background:#dc2626}
.k24-home-series-card__body{
    position:relative;
    z-index:4;
    display:grid;
    grid-template-columns:minmax(0,1fr) auto;
    gap:8px 14px;
    align-items:center;
    padding:15px 17px 16px;
    border-top:1px solid #eef1f5;
    background:#fff;
}
.k24-home-series-card__name{
    min-width:0;
    margin:0 !important;
    color:#172033 !important;
    font-size:18px !important;
    font-weight:850 !important;
    line-height:1.18 !important;
    letter-spacing:-.02em;
}
.k24-home-series-card__body em{
    margin:0 !important;
    color:#475467 !important;
    font-size:11px !important;
    font-style:normal;
    font-weight:800 !important;
    white-space:nowrap;
}
.k24-home-series-card__body em b{
    display:inline-block;
    margin-left:3px;
    font-size:13px;
    transition:transform .16s ease;
}
.k24-home-series-card--visual:hover .k24-home-series-card__body em b{transform:translateX(3px)}
.k24-home-series-card__placeholder{
    position:relative;
    display:grid;
    width:112px;
    height:82px;
    place-items:center;
    border:1px solid #d7dde5;
    border-radius:14px;
    background:#fff;
    box-shadow:0 8px 20px rgba(16,24,40,.06);
}
.k24-home-series-card__placeholder b{
    color:#344054;
    font-size:34px;
    line-height:1;
}
.k24-home-series-card__placeholder i{
    position:absolute;
    top:-6px;
    width:18px;
    height:9px;
    border:1px solid #d7dde5;
    border-radius:9px 9px 3px 3px;
    background:#fff;
}
.k24-home-series-card__placeholder i:nth-of-type(1){left:17px}
.k24-home-series-card__placeholder i:nth-of-type(2){left:46px}
.k24-home-series-card__placeholder i:nth-of-type(3){right:17px}

@media(max-width:900px){
    .k24-home-series-grid--visual{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media(max-width:520px){
    .k24-home-series-grid--visual{grid-template-columns:1fr}
    .k24-home-series-card__media{aspect-ratio:16/10;min-height:210px;padding:18px 22px 12px}
    .k24-home-series-card__body{padding:14px 16px 15px}
}
@media(prefers-reduced-motion:reduce){
    .k24-home-series-card--visual,.k24-home-series-card__image,.k24-home-series-card__body em b{transition:none!important}
    .k24-home-series-card--visual:hover,.k24-home-series-card--visual:hover .k24-home-series-card__image{transform:none!important}
}

/* =========================================================
 * 6.5.0 — Brick UI / Brand Refresh
 * A more tactile, modular Klocki24 visual language without
 * sacrificing readability, data density or accessibility.
 * ======================================================= */
:root{
    --k24-brick-yellow:#ffd400;
    --k24-brick-yellow-dark:#e9bd00;
    --k24-brick-blue:#2563eb;
    --k24-brick-red:#dc2626;
    --k24-brick-green:#15803d;
    --k24-brick-purple:#7c3aed;
    --k24-brick-ink:#111827;
    --k24-brick-line:#d9e0e8;
    --k24-brick-soft:#f5f7fa;
    --k24-brick-shadow:0 10px 24px rgba(15,23,42,.06),0 2px 0 rgba(15,23,42,.035);
    --k24-brick-shadow-hover:0 16px 34px rgba(15,23,42,.10),0 3px 0 rgba(15,23,42,.05);
}

body.k24-shell-template{
    background:
        radial-gradient(circle at 12px 12px,rgba(15,23,42,.025) 1.3px,transparent 1.4px) 0 0/24px 24px,
        #f5f7fa;
}

/* Header: compact, tactile and immediately recognisable. */
.k24-site-header{
    border-bottom:1px solid #dbe1e8;
    background:rgba(255,255,255,.96);
    box-shadow:0 3px 12px rgba(15,23,42,.045);
}
.k24-site-header::after{
    content:"";
    position:absolute;
    left:0;right:0;bottom:-1px;
    height:3px;
    background:linear-gradient(90deg,var(--k24-brick-yellow) 0 42%,var(--k24-brick-blue) 42% 66%,var(--k24-brick-red) 66% 84%,var(--k24-brick-green) 84% 100%);
    opacity:.9;
}
.k24-site-brand__mark{
    border-radius:6px;
    border-color:#d9b500;
    box-shadow:inset 0 -4px 0 rgba(110,84,0,.13),0 2px 0 rgba(15,23,42,.08);
}
.k24-site-nav a{
    border:1px solid transparent;
    border-radius:8px;
    transition:background .14s ease,border-color .14s ease,transform .14s ease;
}
.k24-site-nav a:hover{
    border-color:#e0e5eb;
    background:#f8fafc;
    transform:translateY(-1px);
}
.k24-site-nav a[aria-current="page"]{
    border-color:#ead274;
    background:#fff8d6;
    color:#191600;
    box-shadow:inset 0 -2px 0 rgba(201,165,0,.13);
}
.k24-site-search{
    border-radius:9px;
    box-shadow:inset 0 -2px 0 rgba(15,23,42,.025);
}
.k24-site-search button{
    box-shadow:inset 0 -3px 0 rgba(115,91,0,.13);
}
.k24-site-search button:active{transform:translateY(1px);box-shadow:inset 0 -1px 0 rgba(115,91,0,.13)}

/* Buttons feel like controls rather than generic pills. */
.k24-button,
.k24-ranking-row__cta,
.k24-guide-card__actions a,
.k24-comparison-actions a{
    border-radius:8px !important;
    box-shadow:inset 0 -3px 0 rgba(15,23,42,.10),0 2px 5px rgba(15,23,42,.05);
    transition:transform .14s ease,box-shadow .14s ease,background .14s ease,border-color .14s ease;
}
.k24-button:hover,
.k24-ranking-row__cta:hover,
.k24-guide-card__actions a:hover,
.k24-comparison-actions a:hover{
    transform:translateY(-1px);
}
.k24-button:active,
.k24-ranking-row__cta:active,
.k24-guide-card__actions a:active,
.k24-comparison-actions a:active{
    transform:translateY(1px);
    box-shadow:inset 0 -1px 0 rgba(15,23,42,.10);
}

/* Hero: subtle baseplate feel, not decorative noise. */
.k24-home-hero--v2,
.k24-set-hero,
.k24-ranking-hero,
.k24-guide-hero{
    position:relative;
    overflow:hidden;
    border-radius:18px !important;
    border-color:#d7dee7 !important;
    box-shadow:var(--k24-brick-shadow);
}
.k24-home-hero--v2::before,
.k24-set-hero::before{
    content:"";
    position:absolute;
    width:210px;height:126px;
    right:-34px;top:-36px;
    pointer-events:none;
    opacity:.17;
    background:
        radial-gradient(circle,rgba(15,23,42,.42) 0 5px,rgba(255,255,255,.65) 5.4px 8px,transparent 8.4px) 0 0/34px 34px;
    transform:rotate(-5deg);
}
.k24-home-hero--v2>* , .k24-set-hero>*{position:relative;z-index:1}
.k24-home-hero__panel > div,
.k24-set-stat{
    position:relative;
    border-radius:10px !important;
    box-shadow:inset 0 -2px 0 rgba(15,23,42,.035);
}
.k24-home-hero__panel > div::before{
    content:"";
    position:absolute;
    top:8px;right:9px;
    width:7px;height:7px;
    border-radius:50%;
    background:#dfe4ea;
    box-shadow:-11px 0 #eef1f4;
}

/* Section labels act like small category bricks. */
.k24-home-kicker,
.k24-set-section__eyebrow,
.k24-ranking-eyebrow,
.k24-guide-eyebrow{
    display:inline-flex;
    align-items:center;
    gap:7px;
    width:max-content;
}
.k24-home-kicker::before,
.k24-set-section__eyebrow::before,
.k24-ranking-eyebrow::before,
.k24-guide-eyebrow::before{
    content:"";
    width:9px;height:9px;
    border:1px solid #d4b100;
    border-radius:2px;
    background:var(--k24-brick-yellow);
    box-shadow:inset 0 -2px 0 rgba(115,91,0,.12);
}

/* General content surfaces: slightly squarer and more modular. */
.k24-set-section,
.k24-home-section--series,
.k24-discovery-sets,
.k24-series-context,
.k24-guide-principles,
.k24-guide-next,
.k24-ranking-table,
.k24-ranking-filters{
    border-radius:16px !important;
    border-color:#dbe1e8 !important;
    box-shadow:0 2px 0 rgba(15,23,42,.025);
}

/* Set cards: full product first, with a quiet baseplate background. */
.k24-card{
    border-radius:14px;
    border-color:#dbe1e8;
    box-shadow:var(--k24-brick-shadow);
}
.k24-card:hover{
    transform:translateY(-3px);
    border-color:#cbd4df;
    box-shadow:var(--k24-brick-shadow-hover);
}
.k24-card__media{
    background:
        radial-gradient(circle at 17px 17px,rgba(148,163,184,.13) 0 2.2px,transparent 2.5px) 0 0/34px 34px,
        linear-gradient(145deg,#fbfcfe 0%,#f0f3f7 100%);
}
.k24-card__media::after{
    content:"";
    position:absolute;
    inset:auto 0 0;
    height:3px;
    background:linear-gradient(90deg,var(--k24-brick-yellow) 0 55%,#e8edf3 55% 100%);
    opacity:.8;
}
.k24-card__collector-badge,
.k24-home-featured-reason{
    border-radius:6px !important;
    box-shadow:inset 0 -2px 0 rgba(76,29,149,.06),0 2px 6px rgba(76,29,149,.06) !important;
}
.k24-card__body{background:#fff}
.k24-card__footer{border-top-color:#eef1f4 !important}

/* Homepage intent cards: tactile modules rather than SaaS boxes. */
.k24-home-path,
.k24-home-discovery-card{
    border-radius:14px;
    border-color:#dce2e9;
    box-shadow:0 2px 0 rgba(15,23,42,.025);
}
.k24-home-path::after,
.k24-home-discovery-card::after{
    content:"";
    position:absolute;
    right:12px;bottom:12px;
    width:7px;height:7px;
    border-radius:50%;
    background:#edf0f4;
    box-shadow:-12px 0 #f3f5f7;
    pointer-events:none;
}
.k24-home-path:hover,
.k24-home-discovery-card:hover{box-shadow:var(--k24-brick-shadow-hover)}
.k24-home-path__mark{border-radius:7px;box-shadow:inset 0 -2px 0 rgba(15,23,42,.05)}

/* Popular series: guarantee a clearly visual tile even when a product image is unavailable. */
.k24-home-section--series{
    position:relative;
    overflow:hidden;
    background:#eef2f6;
}
.k24-home-section--series::before{
    content:"";
    position:absolute;
    inset:0;
    pointer-events:none;
    opacity:.32;
    background:radial-gradient(circle at 14px 14px,rgba(100,116,139,.13) 0 2px,transparent 2.3px) 0 0/28px 28px;
}
.k24-home-section--series>*{position:relative;z-index:1}
.k24-home-series-grid--visual{gap:16px}
.k24-home-series-card--visual{
    border-radius:14px;
    border-color:#d5dde7;
    box-shadow:var(--k24-brick-shadow);
    background:#fff;
}
.k24-home-series-card--visual:nth-child(4n+1){--k24-series-accent:#ffd400;--k24-series-tint:#fff8cf}
.k24-home-series-card--visual:nth-child(4n+2){--k24-series-accent:#2563eb;--k24-series-tint:#eef4ff}
.k24-home-series-card--visual:nth-child(4n+3){--k24-series-accent:#dc2626;--k24-series-tint:#fff0f0}
.k24-home-series-card--visual:nth-child(4n+4){--k24-series-accent:#15803d;--k24-series-tint:#eefaf2}
.k24-home-series-card__media{
    aspect-ratio:16/10;
    min-height:190px;
    padding:20px 22px 12px;
    background:
        radial-gradient(circle at 18px 18px,color-mix(in srgb,var(--k24-series-accent) 16%, transparent) 0 2.4px,transparent 2.7px) 0 0/36px 36px,
        linear-gradient(145deg,#fff 0%,var(--k24-series-tint) 100%);
}
.k24-home-series-card__media::before{
    content:"";
    position:absolute;
    left:0;top:0;bottom:0;
    width:5px;
    background:var(--k24-series-accent);
}
.k24-home-series-card__image{
    width:92% !important;
    height:92% !important;
    max-width:92% !important;
    max-height:92% !important;
    object-fit:contain !important;
    object-position:center !important;
    filter:drop-shadow(0 10px 12px rgba(15,23,42,.10));
}
.k24-home-series-card__count{
    border-radius:6px;
    border-color:#d7dee7;
    background:rgba(255,255,255,.94);
    box-shadow:inset 0 -2px 0 rgba(15,23,42,.035),0 3px 8px rgba(15,23,42,.06);
}
.k24-home-series-card__studs{display:none}
.k24-home-series-card__body{
    border-top:1px solid #e9edf2;
    border-bottom:4px solid var(--k24-series-accent);
    padding:14px 16px 13px;
}
.k24-home-series-card__name{font-size:19px !important}
.k24-home-series-card__placeholder{
    width:132px;height:92px;
    border-radius:9px;
    border-color:color-mix(in srgb,var(--k24-series-accent) 40%,#d7dde5);
    background:var(--k24-series-tint);
}

/* Single set page: stronger separation between media, decisions and analytics. */
.k24-set-hero__media{
    position:relative;
    border-radius:12px;
    background:
        radial-gradient(circle at 18px 18px,rgba(100,116,139,.10) 0 2.2px,transparent 2.4px) 0 0/36px 36px,
        linear-gradient(145deg,#fbfcfe 0%,#f1f4f7 100%);
}
.k24-set-section{
    position:relative;
    background:#fff;
}
.k24-set-section::before{
    content:"";
    position:absolute;
    left:0;top:24px;
    width:4px;height:34px;
    border-radius:0 3px 3px 0;
    background:var(--k24-brick-yellow);
}
.k24-product-intel__facts li,
.k24-profile-meter,
.k24-inventory-stats>div,
.k24-color-profile,
.k24-rare-part,
.k24-minifig-card{
    border-radius:10px !important;
    box-shadow:inset 0 -2px 0 rgba(15,23,42,.025);
}

/* Rankings & guides get distinct, simple brick-coded accents. */
.k24-ranking-hubcard,
.k24-guide-hubcard,
.k24-guide-card--v2,
.k24-ranking-row{
    border-radius:14px !important;
    border-color:#dbe1e8 !important;
    box-shadow:var(--k24-brick-shadow);
}
.k24-ranking-hubcard:hover,
.k24-guide-hubcard:hover,
.k24-guide-card--v2:hover{
    box-shadow:var(--k24-brick-shadow-hover);
}
.k24-ranking-hubcard{border-bottom:4px solid #2563eb !important}
.k24-guide-hubcard{border-bottom:4px solid #7c3aed !important}
.k24-guide-card--v2{border-bottom:4px solid #ffd400 !important}
.k24-ranking-row{border-left:4px solid #e5eaf0 !important}
.k24-ranking-row:nth-child(1){border-left-color:#d6b300 !important}
.k24-ranking-row:nth-child(2){border-left-color:#9aa4b2 !important}
.k24-ranking-row:nth-child(3){border-left-color:#b87333 !important}

/* Footer: one quiet baseplate cue, no decorative overload. */
.k24-site-footer{
    position:relative;
    border-radius:18px;
    box-shadow:0 18px 42px rgba(15,23,42,.14);
}
.k24-site-footer::before{
    content:"";
    position:absolute;
    left:0;right:0;top:0;
    height:5px;
    background:linear-gradient(90deg,var(--k24-brick-yellow) 0 45%,var(--k24-brick-blue) 45% 65%,var(--k24-brick-red) 65% 82%,var(--k24-brick-green) 82% 100%);
}

/* Focus stays obvious after the visual refresh. */
.k24-shell-template a:focus-visible,
.k24-shell-template button:focus-visible,
.k24-shell-template input:focus-visible,
.k24-shell-template select:focus-visible,
.k24-set-page a:focus-visible,
.k24-set-page button:focus-visible{
    outline:3px solid rgba(37,99,235,.35) !important;
    outline-offset:3px;
}

@media(max-width:680px){
    body.k24-shell-template{background:#f7f8fa}
    .k24-home-hero--v2,.k24-set-hero,.k24-ranking-hero,.k24-guide-hero{border-radius:14px !important}
    .k24-home-series-card__media{min-height:210px;padding:18px 18px 10px}
    .k24-home-series-card__image{width:94% !important;height:94% !important;max-width:94% !important;max-height:94% !important}
    .k24-set-section::before{top:20px;height:28px}
}

@media(prefers-reduced-motion:reduce){
    .k24-site-nav a,.k24-button,.k24-ranking-row__cta,.k24-guide-card__actions a,.k24-comparison-actions a,
    .k24-card,.k24-home-path,.k24-home-discovery-card,.k24-home-series-card--visual{transition:none!important}
}

/* =========================================================
 * 6.6.0 — Brand & UI Consistency
 * One visual language across homepage, catalog, series,
 * rankings and guides. Brick cues stay functional and calm.
 * ======================================================= */
:root{
    --k24-brand-yellow:#ffd400;
    --k24-brand-blue:#2563eb;
    --k24-brand-red:#dc2626;
    --k24-brand-green:#15803d;
    --k24-brand-purple:#7c3aed;
    --k24-brand-ink:#111827;
    --k24-brand-muted:#667085;
    --k24-brand-line:#d9e0e8;
    --k24-brand-paper:#ffffff;
    --k24-brand-soft:#f5f7fa;
    --k24-brand-radius:14px;
}

/* Real brand asset shared by header, footer and browser icon. */
.k24-site-brand{
    gap:9px;
    letter-spacing:-.035em;
}
.k24-site-brand__mark{
    display:block;
    width:36px;
    height:36px;
    flex:0 0 36px;
    overflow:visible;
    border:0 !important;
    border-radius:0 !important;
    background:transparent !important;
    box-shadow:none !important;
}
.k24-site-brand__mark::before,
.k24-site-brand__mark::after,
.k24-site-brand__mark i{display:none !important}
.k24-site-brand__mark img{
    display:block;
    width:36px;
    height:36px;
    object-fit:contain;
    filter:drop-shadow(0 2px 1px rgba(15,23,42,.08));
}
.k24-site-brand__word{
    display:inline-block;
    transform:translateY(-.5px);
}
.k24-site-brand:hover .k24-site-brand__mark img{filter:drop-shadow(0 4px 3px rgba(15,23,42,.12))}

/* Header: compact product-navigation feel with a clear active state. */
.k24-site-header__inner{min-height:68px}
.k24-site-header::after{height:4px}
.k24-site-nav a{
    position:relative;
    border-radius:7px;
    padding:10px 10px 9px;
}
.k24-site-nav a::after{
    content:"";
    position:absolute;
    left:10px;
    right:10px;
    bottom:3px;
    height:2px;
    border-radius:2px;
    background:transparent;
    transform:scaleX(.3);
    transition:transform .14s ease,background .14s ease;
}
.k24-site-nav a:hover::after{background:#cbd5e1;transform:scaleX(1)}
.k24-site-nav a[aria-current="page"]{
    border-color:#ead274;
    background:#fff8d6;
    color:#17130a;
}
.k24-site-nav a[aria-current="page"]::after{background:#d6b300;transform:scaleX(1)}
.k24-site-search{border-radius:9px}
.k24-site-search button{
    min-width:62px;
    background:var(--k24-brand-yellow);
}

/* Hero surfaces: restrained studs as a recognizable K24 device. */
.k24-home-hero--v2,
.k24-catalog-hero,
.k24-series-hero,
.k24-ranking-hero,
.k24-guide-hero,
.k24-set-hero{
    border-radius:16px !important;
    box-shadow:0 12px 30px rgba(15,23,42,.065),0 2px 0 rgba(15,23,42,.025);
}
.k24-home-hero--v2::after,
.k24-catalog-hero::after,
.k24-series-hero::after,
.k24-ranking-hero::after,
.k24-guide-hero::after{
    content:"";
    position:absolute;
    right:24px;
    bottom:18px;
    width:10px;
    height:10px;
    border-radius:50%;
    background:var(--k24-brand-yellow);
    box-shadow:16px 0 var(--k24-brand-blue),32px 0 var(--k24-brand-red);
    opacity:.78;
    pointer-events:none;
}

/* Consistent section rhythm and headings. */
.k24-home-section__head h2,
.k24-zone-heading h2,
.k24-series-subheading,
.k24-ranking-hero h1,
.k24-guide-hero h1{
    letter-spacing:-.035em;
}
.k24-home-section,
.k24-set-section,
.k24-series-overview,
.k24-ranking-table,
.k24-guide-principles,
.k24-guide-next{
    scroll-margin-top:92px;
}

/* Shared physical-module treatment. */
.k24-card,
.k24-home-path,
.k24-home-discovery-card,
.k24-home-series-card--visual,
.k24-ranking-hubcard,
.k24-guide-hubcard,
.k24-guide-card--v2,
.k24-ranking-row,
.k24-series-highlight,
.k24-series-guide{
    border-color:#d8e0e9 !important;
    border-radius:13px !important;
    box-shadow:0 7px 18px rgba(15,23,42,.045),0 2px 0 rgba(15,23,42,.025);
}
.k24-card:hover,
.k24-home-path:hover,
.k24-home-discovery-card:hover,
.k24-home-series-card--visual:hover,
.k24-ranking-hubcard:hover,
.k24-guide-hubcard:hover,
.k24-guide-card--v2:hover{
    box-shadow:0 14px 30px rgba(15,23,42,.085),0 3px 0 rgba(15,23,42,.035);
}

/* Product media is always about the whole set, never a crop. */
.k24-card__media,
.k24-ranking-row__image,
.k24-guide-card__image,
.k24-set-hero__media{
    background:
        radial-gradient(circle at 16px 16px,rgba(100,116,139,.095) 0 2.1px,transparent 2.4px) 0 0/32px 32px,
        linear-gradient(145deg,#fff 0%,#f2f5f8 100%);
}
.k24-card__image,
.k24-ranking-row__image img,
.k24-guide-card__image img,
.k24-set-image{
    object-fit:contain !important;
    object-position:center !important;
}

/* Homepage paths: use a colored brick edge, not another decorative badge. */
.k24-home-path{overflow:hidden}
.k24-home-path:nth-child(4n+1){border-bottom:4px solid var(--k24-brand-yellow) !important}
.k24-home-path:nth-child(4n+2){border-bottom:4px solid var(--k24-brand-blue) !important}
.k24-home-path:nth-child(4n+3){border-bottom:4px solid var(--k24-brand-red) !important}
.k24-home-path:nth-child(4n+4){border-bottom:4px solid var(--k24-brand-green) !important}

/* Series are image-led. The set is given almost the whole tile. */
.k24-home-section--series{
    padding:clamp(24px,3vw,34px) !important;
    background:
        radial-gradient(circle at 15px 15px,rgba(100,116,139,.105) 0 2px,transparent 2.25px) 0 0/30px 30px,
        #eef2f6 !important;
}
.k24-home-series-grid--visual{gap:14px !important}
.k24-home-series-card--visual{background:#fff !important}
.k24-home-series-card__media{
    aspect-ratio:16/11 !important;
    min-height:210px !important;
    padding:24px 18px 10px !important;
}
.k24-home-series-card__image{
    width:96% !important;
    height:96% !important;
    max-width:96% !important;
    max-height:96% !important;
    object-fit:contain !important;
    object-position:center !important;
    transform:none !important;
}
.k24-home-series-card--visual:hover .k24-home-series-card__image{
    transform:translateY(-2px) !important;
}
.k24-home-series-card__count{
    top:11px;
    left:11px;
    border-radius:6px;
    font-size:10px !important;
}
.k24-home-series-card__body{
    min-height:66px;
    padding:13px 15px 14px !important;
}
.k24-home-series-card__name{font-size:18px !important}

/* Rankings: one accent per analytical intent, with data remaining dominant. */
.k24-ranking-hubcard:nth-child(5n+1){border-bottom-color:var(--k24-brand-purple) !important}
.k24-ranking-hubcard:nth-child(5n+2){border-bottom-color:var(--k24-brand-blue) !important}
.k24-ranking-hubcard:nth-child(5n+3){border-bottom-color:var(--k24-brand-red) !important}
.k24-ranking-hubcard:nth-child(5n+4){border-bottom-color:var(--k24-brand-green) !important}
.k24-ranking-hubcard:nth-child(5n+5){border-bottom-color:var(--k24-brand-yellow) !important}
.k24-ranking-row__rank{
    border-radius:6px !important;
    box-shadow:inset 0 -2px 0 rgba(15,23,42,.045);
}

/* Guides: decision cards look editorial rather than dashboard-like. */
.k24-guide-card--v2{border-bottom-color:var(--k24-brand-yellow) !important}
.k24-guide-card--v2:nth-child(3n+2){border-bottom-color:var(--k24-brand-blue) !important}
.k24-guide-card--v2:nth-child(3n+3){border-bottom-color:var(--k24-brand-purple) !important}
.k24-guide-card__why,
.k24-guide-card__tradeoff{
    border-radius:9px !important;
}

/* Series landing: same family as homepage series tiles. */
.k24-series-highlight-grid{gap:14px}
.k24-series-highlight{
    position:relative;
    overflow:hidden;
}
.k24-series-highlight::after{
    content:"";
    position:absolute;
    left:0;
    right:0;
    bottom:0;
    height:4px;
    background:var(--k24-brand-yellow);
}
.k24-series-highlight:nth-child(3n+2)::after{background:var(--k24-brand-blue)}
.k24-series-highlight:nth-child(3n+3)::after{background:var(--k24-brand-red)}

/* Controls and chips: less pill-heavy, more tactile. */
.k24-chip,
.k24-preview-pill,
.k24-filter-toggle,
.k24-card__collector-badge,
.k24-home-featured-reason{
    border-radius:6px !important;
}
.k24-button,
.k24-ranking-row__cta,
.k24-guide-card__actions a,
.k24-comparison-actions a{
    border-radius:7px !important;
}

/* Footer carries the brand asset without becoming a second hero. */
.k24-site-footer__brand .k24-site-brand__mark img{
    filter:drop-shadow(0 3px 2px rgba(0,0,0,.20));
}

@media(max-width:980px){
    .k24-site-header__inner{row-gap:10px}
    .k24-home-series-card__media{min-height:220px !important}
}

@media(max-width:680px){
    .k24-site-brand__mark,
    .k24-site-brand__mark img{width:32px;height:32px;flex-basis:32px}
    .k24-site-header__inner{padding:9px 0 10px}
    .k24-site-nav{
        margin-inline:-2px;
        padding:2px 2px 4px;
        scroll-snap-type:x proximity;
    }
    .k24-site-nav a{scroll-snap-align:start}
    .k24-home-section--series{padding:20px 16px !important}
    .k24-home-series-card__media{aspect-ratio:16/10 !important;min-height:225px !important;padding:22px 16px 8px !important}
    .k24-home-series-card__image{width:97% !important;height:97% !important;max-width:97% !important;max-height:97% !important}
}

@media(max-width:420px){
    .k24-site-brand__word{font-size:19px}
    .k24-home-series-card__media{min-height:205px !important}
}

@media(prefers-reduced-motion:reduce){
    .k24-site-brand__mark img,
    .k24-site-nav a::after{transition:none !important}
}

/* 6.6.1 — guide copy intelligence: no empty/generic second column. */
.k24-guide-card__decision.is-single {
    grid-template-columns:1fr;
}
.k24-guide-card__decision.is-single .k24-guide-card__why {
    max-width:none;
}
.k24-guide-card__tradeoff strong {
    color:#8a5a00;
}

/* ========================================================================== 
   Klocki24 6.7.0 — Guides Registry 3.0 / intent hubs
   ========================================================================== */
.k24-guides--registry,
.k24-guide-section{
    max-width:1280px;
    margin:0 auto;
    padding:34px 24px 72px;
}
.k24-guide-hero--registry,
.k24-guide-hero--section{
    position:relative;
    overflow:hidden;
    border:1px solid #dfe5ee;
    border-bottom:4px solid #ffd500;
    background:
        radial-gradient(circle at 88% 24%,rgba(37,99,235,.08) 0 5px,transparent 6px) 0 0/28px 28px,
        linear-gradient(135deg,#fff 0%,#f7f9fc 100%);
}
.k24-guide-hubs{
    display:grid;
    grid-template-columns:repeat(3,minmax(0,1fr));
    gap:16px;
    margin:22px 0 38px;
}
.k24-guide-hubtile{
    --hub:#2563eb;
    position:relative;
    min-height:260px;
    display:flex;
    flex-direction:column;
    padding:22px;
    border:1px solid #dfe5ee;
    border-bottom:5px solid var(--hub);
    border-radius:14px;
    background:#fff;
    color:#172033;
    text-decoration:none;
    box-shadow:0 2px 0 rgba(16,24,40,.03);
    transition:transform .18s ease,box-shadow .18s ease,border-color .18s ease;
}
.k24-guide-hubtile:hover{
    transform:translateY(-3px);
    box-shadow:0 12px 28px rgba(16,24,40,.10);
    border-color:#ccd5e2;
}
.k24-guide-hubtile--yellow{--hub:#f5c400}
.k24-guide-hubtile--blue{--hub:#2563eb}
.k24-guide-hubtile--green{--hub:#16a34a}
.k24-guide-hubtile--red{--hub:#dc2626}
.k24-guide-hubtile--purple{--hub:#7c3aed}
.k24-guide-hubtile--navy{--hub:#172033}
.k24-guide-hubtile--violet{--hub:#8b5cf6}
.k24-guide-hubtile__studs{display:flex;gap:7px;margin-bottom:18px}
.k24-guide-hubtile__studs i{width:13px;height:13px;border-radius:50%;background:var(--hub);box-shadow:inset 0 -2px 0 rgba(0,0,0,.12)}
.k24-guide-hubtile small{
    color:#667085;
    font-size:11px;
    font-weight:800;
    letter-spacing:.08em;
    text-transform:uppercase;
}
.k24-guide-hubtile h2{margin:7px 0 9px;font-size:24px;line-height:1.1;letter-spacing:-.025em}
.k24-guide-hubtile p{margin:0 0 20px;color:#667085;line-height:1.55;font-size:14px}
.k24-guide-hubtile__meta{display:flex;flex-wrap:wrap;gap:7px;margin-top:auto;padding-top:16px;border-top:1px solid #edf0f4}
.k24-guide-hubtile__meta span,
.k24-guide-hubtile__meta em{font-size:11px;font-style:normal;font-weight:700;padding:5px 8px;border-radius:999px;background:#f3f5f8;color:#556176}
.k24-guide-hubtile__meta em{background:color-mix(in srgb,var(--hub) 10%,white);color:#172033}
.k24-guide-hubtile__cta{margin-top:14px;font-size:13px;color:#172033}
.k24-guide-ready{margin:42px 0}
.k24-guide-section__ready{margin:30px 0 38px}
.k24-guide-roadmap{
    margin:34px 0;
    padding:28px;
    border:1px solid #dfe5ee;
    border-radius:14px;
    background:#fff;
}
.k24-guide-roadmap__group+ .k24-guide-roadmap__group{margin-top:26px;padding-top:22px;border-top:1px solid #edf0f4}
.k24-guide-roadmap__group h3{margin:0 0 12px;font-size:15px;letter-spacing:-.01em}
.k24-guide-roadmap__chips{display:flex;flex-wrap:wrap;gap:8px}
.k24-guide-roadmap__chips a,
.k24-guide-roadmap__chips span{
    display:inline-flex;
    align-items:center;
    min-height:38px;
    padding:8px 11px;
    border:1px solid #e0e5ed;
    border-radius:9px;
    background:#f8fafc;
    color:#354052;
    font-size:13px;
    line-height:1.25;
    text-decoration:none;
}
.k24-guide-roadmap__chips a{background:#fff;border-color:#bfd0f5;color:#1d4ed8;font-weight:700}
.k24-guide-roadmap__chips a:hover{border-color:#2563eb;background:#f5f8ff}
.k24-guide-other-hubs{
    margin-top:34px;
    padding:22px 24px;
    border:1px solid #dfe5ee;
    border-radius:14px;
    background:#f8fafc;
}
.k24-guide-other-hubs>strong{display:block;margin-bottom:12px;font-size:14px}
.k24-guide-other-hubs>div{display:flex;flex-wrap:wrap;gap:8px}
.k24-guide-other-hubs a{padding:8px 10px;border-radius:8px;background:#fff;border:1px solid #e0e5ed;text-decoration:none;color:#344054;font-size:13px;font-weight:700}
.k24-guide-breadcrumb a{font-weight:700}
@media (max-width:980px){
    .k24-guide-hubs{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media (max-width:680px){
    .k24-guides--registry,.k24-guide-section{padding:22px 14px 52px}
    .k24-guide-hubs{grid-template-columns:1fr;gap:12px}
    .k24-guide-hubtile{min-height:0;padding:18px}
    .k24-guide-hubtile h2{font-size:21px}
    .k24-guide-roadmap{padding:20px 16px}
    .k24-guide-roadmap__chips{gap:6px}
    .k24-guide-roadmap__chips a,.k24-guide-roadmap__chips span{width:100%}
}

/* 6.8 Guides Generator: prerendered editorial templates + dynamic freshness */
.k24-guide-freshness{
    display:inline-flex;
    align-items:center;
    gap:7px;
    margin-top:14px;
    padding:7px 10px;
    border:1px solid #cfd8e6;
    border-radius:999px;
    background:#fff;
    color:#344054;
    font-size:12px;
    font-weight:800;
    line-height:1;
}
.k24-guide-freshness::before{
    content:"";
    width:8px;
    height:8px;
    border-radius:50%;
    background:#16a34a;
    box-shadow:0 0 0 3px rgba(22,163,74,.10);
}
.k24-guide-editorial{
    display:grid;
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:16px;
    margin:26px 0 34px;
}
.k24-guide-editorial--after{margin-top:34px}
.k24-guide-editorial__block{
    position:relative;
    padding:24px 25px;
    border:1px solid #dde3ec;
    border-radius:14px;
    background:linear-gradient(180deg,#fff 0%,#fbfcfe 100%);
    box-shadow:0 2px 0 rgba(23,32,51,.03);
}
.k24-guide-editorial__block::before{
    content:"";
    position:absolute;
    top:-1px;
    left:24px;
    width:42px;
    height:4px;
    border-radius:0 0 4px 4px;
    background:#f5c400;
}
.k24-guide-editorial__block:nth-child(2n)::before{background:#2563eb}
.k24-guide-editorial__block h2{
    margin:0 0 11px;
    color:#172033;
    font-size:21px;
    line-height:1.18;
    letter-spacing:-.025em;
}
.k24-guide-editorial__block p{
    margin:0;
    color:#556176;
    font-size:15px;
    line-height:1.68;
}
.k24-guide-editorial__block ul{
    display:grid;
    gap:8px;
    margin:17px 0 0;
    padding:0;
    list-style:none;
}
.k24-guide-editorial__block li{
    position:relative;
    padding-left:21px;
    color:#344054;
    font-size:14px;
    line-height:1.5;
}
.k24-guide-editorial__block li::before{
    content:"";
    position:absolute;
    left:0;
    top:.54em;
    width:8px;
    height:8px;
    border-radius:2px;
    background:#f5c400;
    box-shadow:inset 0 -1px 0 rgba(0,0,0,.12);
}
@media (max-width:760px){
    .k24-guide-editorial{grid-template-columns:1fr;gap:12px;margin:20px 0 28px}
    .k24-guide-editorial__block{padding:21px 18px}
    .k24-guide-editorial__block h2{font-size:19px}
}
.k24-guide-editorial__block:only-child{grid-column:1/-1}
