/* Klocki24 6.33.0 — Frontpage UX / Navigation Hub
 * Homepage becomes an action-first dashboard. Existing catalog, series, ranking,
 * guide and commerce engines remain the source of truth; this layer only changes
 * hierarchy and presentation. */

.k24-home-action-hub {
    margin: 28px 0 34px;
    padding: 26px;
    border: 1px solid #dfe5ed;
    border-radius: 22px;
    background: linear-gradient(145deg, #ffffff, #f8fafc 72%);
    box-shadow: 0 10px 28px rgba(15, 33, 60, .045);
}
.k24-home-action-hub__head {
    display: flex;
    gap: 24px;
    align-items: flex-end;
    justify-content: space-between;
    margin-bottom: 18px;
}
.k24-home-action-hub__head h2 {
    max-width: 820px;
    margin: 0;
    color: #0b1d38;
    font-size: clamp(25px, 2.7vw, 38px);
    line-height: 1.04;
    letter-spacing: -.035em;
}
.k24-home-action-hub__catalog {
    flex: none;
    color: #253752;
    font-size: 12px;
    font-weight: 900;
    text-decoration: none;
    white-space: nowrap;
}
.k24-home-action-hub__catalog:hover { text-decoration: underline; }

.k24-home-action-hub__primary,
.k24-home-action-hub__secondary {
    display: grid;
    gap: 12px;
}
.k24-home-action-hub__primary { grid-template-columns: repeat(2, minmax(0, 1fr)); }
.k24-home-action-hub__secondary {
    grid-template-columns: repeat(4, minmax(0, 1fr));
    margin-top: 12px;
}

.k24-home-action-card {
    --k24-action-accent: #c79f00;
    --k24-action-soft: #fff9dc;
    position: relative;
    display: grid;
    grid-template-columns: auto minmax(0, 1fr) auto;
    gap: 14px;
    align-items: start;
    min-width: 0;
    overflow: hidden;
    border: 1px solid #dfe5ed;
    border-radius: 17px;
    background: #fff;
    color: #0b1d38;
    text-decoration: none;
    box-shadow: 0 5px 15px rgba(15, 23, 42, .025);
    transition: transform .14s ease, border-color .14s ease, box-shadow .14s ease;
}
.k24-home-action-card--primary {
    min-height: 166px;
    padding: 21px 20px;
    background:
        radial-gradient(circle at calc(100% - 22px) 22px, color-mix(in srgb, var(--k24-action-accent) 18%, transparent) 1.4px, transparent 1.5px) 0 0/19px 19px,
        linear-gradient(145deg, var(--k24-action-soft), #fff 62%);
}
.k24-home-action-card--secondary {
    min-height: 142px;
    padding: 17px 15px;
}
.k24-home-action-card.is-discover { --k24-action-accent:#d3aa00; --k24-action-soft:#fff8cf; }
.k24-home-action-card.is-deals { --k24-action-accent:#16834c; --k24-action-soft:#edf9f2; }
.k24-home-action-card.is-compare { --k24-action-accent:#2563eb; --k24-action-soft:#eef4ff; }
.k24-home-action-card.is-rankings { --k24-action-accent:#7c3aed; --k24-action-soft:#f6f1ff; }
.k24-home-action-card.is-guides { --k24-action-accent:#d14b15; --k24-action-soft:#fff3ed; }
.k24-home-action-card.is-watchlist { --k24-action-accent:#0f766e; --k24-action-soft:#eefaf8; }
.k24-home-action-card:hover {
    transform: translateY(-2px);
    border-color: color-mix(in srgb, var(--k24-action-accent) 38%, #dfe5ed);
    box-shadow: 0 14px 30px rgba(15, 33, 60, .085);
}
.k24-home-action-card__mark {
    display: grid;
    width: 42px;
    height: 42px;
    place-items: center;
    border-radius: 13px;
    background: color-mix(in srgb, var(--k24-action-accent) 13%, #fff);
    color: var(--k24-action-accent);
    box-shadow: inset 0 0 0 1px color-mix(in srgb, var(--k24-action-accent) 18%, transparent);
    font-size: 20px;
    font-weight: 950;
}
.k24-home-action-card--secondary .k24-home-action-card__mark {
    width: 36px;
    height: 36px;
    border-radius: 11px;
    font-size: 17px;
}
.k24-home-action-card__body {
    display: flex;
    min-width: 0;
    flex-direction: column;
    align-items: flex-start;
}
.k24-home-action-card__body small {
    margin: 1px 0 7px;
    color: color-mix(in srgb, var(--k24-action-accent) 78%, #364152);
    font-size: 10px;
    font-weight: 950;
    letter-spacing: .075em;
    line-height: 1.2;
    text-transform: uppercase;
}
.k24-home-action-card__body strong {
    color: #0b1d38;
    font-size: 20px;
    font-weight: 950;
    line-height: 1.08;
    letter-spacing: -.025em;
}
.k24-home-action-card--primary .k24-home-action-card__body strong { font-size: 24px; }
.k24-home-action-card__body em {
    display: block;
    margin-top: 8px;
    color: #5b687b;
    font-size: 12px;
    font-style: normal;
    font-weight: 550;
    line-height: 1.45;
}
.k24-home-action-card__meta {
    display: inline-flex;
    min-height: 27px;
    align-items: center;
    margin-top: auto;
    padding: 6px 9px;
    border-radius: 999px;
    background: #f4f6f9;
    color: #45546a;
    font-size: 10px;
    font-weight: 850;
    line-height: 1.2;
}
.k24-home-action-card--primary .k24-home-action-card__meta { margin-top: 13px; }
.k24-home-action-card__arrow {
    display: grid;
    width: 29px;
    height: 29px;
    place-items: center;
    border-radius: 9px;
    background: #fff;
    color: #344054;
    box-shadow: inset 0 0 0 1px rgba(15,23,42,.08);
    font-size: 14px;
}
.k24-home-action-card:hover .k24-home-action-card__arrow {
    color: var(--k24-action-accent);
    box-shadow: inset 0 0 0 1px color-mix(in srgb, var(--k24-action-accent) 30%, rgba(15,23,42,.08));
}

/* Price surface is deliberately labelled as current pricing, not as a verified deal,
   until Smart Price has enough history for a public claim. */
.k24-home-section--prices {
    margin-top: 30px;
    padding: 26px;
    border: 1px solid #dfe5ed;
    border-radius: 20px;
    background: #fff;
}

/* Keep all series crawlable and one click away while preventing a 39-card wall from
   pushing every other homepage route far below the fold. */
.k24-home-series-directory--featured { margin-bottom: 12px; }
.k24-home-series-more {
    margin-top: 13px;
    border: 1px solid #dfe5ed;
    border-radius: 15px;
    background: #fff;
    overflow: hidden;
}
.k24-home-series-more > summary {
    display: flex;
    min-height: 66px;
    align-items: center;
    justify-content: space-between;
    gap: 18px;
    padding: 13px 16px;
    cursor: pointer;
    list-style: none;
    color: #0f213c;
    user-select: none;
}
.k24-home-series-more > summary::-webkit-details-marker { display: none; }
.k24-home-series-more > summary span { display: grid; gap: 3px; }
.k24-home-series-more > summary strong { font-size: 13px; font-weight: 950; }
.k24-home-series-more > summary small { color: #667085; font-size: 10.5px; font-weight: 650; }
.k24-home-series-more > summary b {
    display: grid;
    width: 31px;
    height: 31px;
    flex: 0 0 31px;
    place-items: center;
    border-radius: 9px;
    background: #f3f5f8;
    font-size: 18px;
    font-weight: 600;
    transition: transform .14s ease;
}
.k24-home-series-more[open] > summary {
    border-bottom: 1px solid #e4e8ee;
    background: #fafbfd;
}
.k24-home-series-more[open] > summary b { transform: rotate(45deg); }
.k24-home-series-directory--more { padding: 12px; }

@media (max-width: 1120px) {
    .k24-home-action-hub__secondary { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}
@media (max-width: 760px) {
    .k24-home-action-hub { padding: 20px; border-radius: 18px; }
    .k24-home-action-hub__head { align-items: flex-start; flex-direction: column; gap: 9px; }
    .k24-home-action-hub__primary { grid-template-columns: 1fr; }
    .k24-home-action-card--primary { min-height: 150px; }
    .k24-home-section--prices { padding: 20px; }
}
@media (max-width: 560px) {
    .k24-home-action-hub { padding: 15px; }
    .k24-home-action-hub__secondary { grid-template-columns: 1fr; }
    .k24-home-action-card--secondary { min-height: 128px; }
    .k24-home-action-card { grid-template-columns: auto minmax(0,1fr) 27px; gap: 11px; }
    .k24-home-action-card--primary { padding: 18px 15px; }
    .k24-home-action-card__body strong,
    .k24-home-action-card--primary .k24-home-action-card__body strong { font-size: 19px; }
    .k24-home-series-directory--more { padding: 9px; }
}
@media (prefers-reduced-motion: reduce) {
    .k24-home-action-card,
    .k24-home-series-more > summary b { transition: none; }
    .k24-home-action-card:hover { transform: none; }
}
