.elab-home-focus {
    margin: 0 0 var(--elab-space-6, 24px);
    color: var(--elab-text, #1a1a1a);
    font-family: var(--elab-font-body, "Plus Jakarta Sans", -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif);
}

.elab-home-focus *,
.elab-home-focus *::before,
.elab-home-focus *::after {
    box-sizing: border-box;
}

.elab-home-focus a {
    text-decoration-thickness: 1px;
    text-underline-offset: 2px;
}

/*
 * Peamine pealkirja-riba ("Värske kraam:" + "Vaata lisaks") kasutab UI-KIT-i
 * `.elab-section__head` + `.elab-section__title` + `.elab-section__action`
 * mustrit (vt elab-ui.css §17). Siin failis ainult "Varsti laval:" alajaotuse
 * head'i stiilid.
 */

.elab-home-focus__future-head {
    display: flex;
    align-items: end;
    justify-content: space-between;
    gap: var(--elab-space-4, 16px);
    margin-bottom: var(--elab-space-4, 16px);
}

.elab-home-focus__future-head > div {
    min-width: 0;
}

.elab-home-focus__future-head h3 {
    margin: 0;
    color: var(--elab-text, #1a1a1a);
    font-family: var(--elab-font-display, "Fraunces", Georgia, serif);
    font-weight: 650;
    line-height: var(--elab-lh-tight, 1.25);
    letter-spacing: 0;
    font-size: var(--elab-fs-2xl, 24px);
}

.elab-home-focus__future-link {
    flex: 0 0 auto;
}

.elab-home-focus__grid {
    display: grid;
    grid-template-columns: minmax(0, 1fr) minmax(260px, 33%);
    gap: var(--elab-space-6, 24px);
    align-items: stretch;
}

.elab-home-focus__hero {
    display: grid;
    grid-template-columns: minmax(180px, 31%) minmax(0, 1fr);
    min-width: 0;
    overflow: hidden;
    border: 1px solid var(--elab-border, #e5e7eb);
    border-radius: var(--elab-radius-lg, 12px);
    background: var(--elab-bg, #fff);
    box-shadow: var(--elab-shadow-md, 0 4px 12px rgba(0, 0, 0, 0.08));
}

.elab-home-focus__image-link {
    position: relative;
    display: grid;
    min-height: 360px;
    overflow: hidden;
    padding: 20px 0 0 20px;
    background: var(--elab-bg, #fff);
}

.elab-home-focus__image,
.elab-home-focus__image-fallback {
    display: block;
    width: 100%;
    height: 100%;
    min-height: calc(360px - 15px);
    border-radius: var(--elab-radius-sm, 6px);
}

.elab-home-focus__image {
    object-fit: cover;
}

.elab-home-focus__image-fallback {
    display: grid;
    place-items: center;
    color: var(--elab-green-dark, #3d8403);
    background: var(--elab-green-soft2, #f8fcf3);
}

.elab-home-focus__image-fallback svg {
    width: 44px;
    height: 44px;
}

.elab-home-focus__hero-body {
    display: flex;
    flex-direction: column;
    gap: var(--elab-space-3, 12px);
    min-width: 0;
    padding: var(--elab-space-6, 24px);
}

.elab-home-focus__meta-row,
.elab-home-focus__badges,
.elab-home-focus__actions {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: var(--elab-space-2, 8px);
}

.elab-home-focus__muted {
    color: var(--elab-text-muted, #6b7280);
    font-size: var(--elab-fs-sm, 12px);
}

.elab-home-focus__title {
    margin: 0;
    color: var(--elab-text, #1a1a1a);
    font-family: var(--elab-font-display, "Fraunces", Georgia, serif);
    font-size: 32px;
    font-weight: 600;
    line-height: 1.08;
    letter-spacing: 0;
}

.elab-home-focus__title a {
    color: inherit;
    text-decoration: none;
}

.elab-home-focus__title a:hover,
.elab-home-focus__title a:focus {
    color: var(--elab-green-dark, #3d8403);
    text-decoration: underline;
    text-decoration-color: rgba(74, 159, 4, 0.35);
}

.elab-home-focus__title span {
    color: var(--elab-text-soft, #9ca3af);
    font-weight: 500;
}

.elab-home-focus__badge {
    color: var(--elab-text-secondary, #4b5563);
    text-decoration: none;
}

.elab-home-focus__badge:hover,
.elab-home-focus__badge:focus {
    color: var(--elab-green-dark, #3d8403);
}

.elab-home-focus__excerpt {
    max-width: 62ch;
    margin: 0;
    overflow-wrap: anywhere;
    color: var(--elab-text-secondary, #4b5563);
    font-size: var(--elab-fs-md, 15px);
    line-height: var(--elab-lh-relaxed, 1.65);
}

.elab-home-focus__facts {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: var(--elab-space-2, 8px) var(--elab-space-4, 16px);
    margin: auto 0 0;
    padding: var(--elab-space-4, 16px) 0 0;
    border-top: 1px solid var(--elab-border-soft, #f0f0f0);
	border-color: rgba(255, 255, 255, 0.2);
}

.elab-home-focus__fact {
    min-width: 0;
}

.elab-home-focus__fact dt {
    margin: 0 0 2px;
    color: var(--elab-text-soft, #9ca3af);
    font-size: var(--elab-fs-xs, 11px);
    font-weight: var(--elab-fw-semibold, 600);
    letter-spacing: 0.06em;
    line-height: 1.4;
    text-transform: uppercase;
}

.elab-home-focus__fact dd {
    margin: 0;
    overflow-wrap: anywhere;
    color: var(--elab-text-secondary, #4b5563);
    font-size: var(--elab-fs-sm, 12px);
    line-height: var(--elab-lh-snug, 1.4);
}

.elab-home-focus__fact a {
    color: var(--elab-green-dark, #3d8403);
}

.elab-home-focus__latest {
    display: flex;
    flex-direction: column;
    min-width: 0;
    border: 1px solid var(--elab-border, #e5e7eb);
    border-radius: var(--elab-radius-lg, 12px);
    background: var(--elab-bg, #fff);
    box-shadow: var(--elab-shadow-sm, 0 1px 3px rgba(0, 0, 0, 0.06));
}

.elab-home-focus__latest-head {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: var(--elab-space-3, 12px);
    padding: var(--elab-space-4, 16px) var(--elab-space-4, 16px) var(--elab-space-3, 12px);
    border-bottom: 1px solid var(--elab-border-soft, #f0f0f0);
	border-color: rgba(255, 255, 255, 0.2);
}

.elab-home-focus__latest-head h3 {
    margin: 0;
    color: var(--elab-text, #1a1a1a);
    font-size: var(--elab-fs-md, 15px);
    font-weight: var(--elab-fw-semibold, 600);
    line-height: var(--elab-lh-tight, 1.25);
}

.elab-home-focus__latest-head span {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 26px;
    height: 26px;
    border-radius: var(--elab-radius-full, 999px);
    background: var(--elab-green-soft, #f0f9e8);
    color: var(--elab-green-darker, #2d5f02);
    font-size: var(--elab-fs-xs, 11px);
    font-weight: var(--elab-fw-bold, 700);
}

.elab-home-focus ol.elab-home-focus__mini-list {
    display: grid;
    gap: 0;
    margin: 0;
    padding: 0;
    list-style: none;
}

.elab-home-focus .elab-home-focus__mini-list > li.elab-home-focus__mini-item {
    margin: 0;
    padding: 0;
}

.elab-home-focus__mini-link {
    display: grid;
    grid-template-columns: 30px 54px minmax(0, 1fr);
    gap: var(--elab-space-3, 12px);
    align-items: center;
    min-height: 82px;
    padding: var(--elab-space-3, 12px) var(--elab-space-4, 16px);
    color: inherit;
    text-decoration: none;
    transition: background-color var(--elab-trans-base, 0.18s ease);
}

.elab-home-focus__mini-item + .elab-home-focus__mini-item {
    border-top: 1px solid var(--elab-border-soft, #f0f0f0);
	border-color: rgba(255, 255, 255, 0.2);
}

.elab-home-focus__mini-link:hover,
.elab-home-focus__mini-link:focus {
    background: var(--elab-bg-hover, #f9fafb);
}

.elab-home-focus__mini-rank {
    color: var(--elab-text-soft, #9ca3af);
    font-family: var(--elab-font-mono, ui-monospace, SFMono-Regular, Menlo, Consolas, monospace);
    font-size: var(--elab-fs-xs, 11px);
    font-weight: var(--elab-fw-semibold, 600);
}

.elab-home-focus__mini-thumb {
    display: block;
    width: 54px;
    aspect-ratio: 3 / 4;
    overflow: hidden;
    border-radius: var(--elab-radius-sm, 6px);
    background: var(--elab-bg-soft2, #f5f5f5);
}

.elab-home-focus__mini-img,
.elab-home-focus__future-img {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.elab-home-focus__mini-body {
    display: grid;
    gap: 4px;
    min-width: 0;
}

.elab-home-focus__mini-title {
    display: -webkit-box;
    overflow: hidden;
    color: var(--elab-text, #1a1a1a);
    font-size: var(--elab-fs-base, 14px);
    font-weight: var(--elab-fw-semibold, 600);
    line-height: var(--elab-lh-tight, 1.25);
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 2;
}

.elab-home-focus__mini-meta {
    display: flex;
    flex-wrap: wrap;
    gap: 4px var(--elab-space-2, 8px);
    color: var(--elab-text-muted, #6b7280);
    font-size: var(--elab-fs-xs, 11px);
    line-height: var(--elab-lh-snug, 1.4);
}

.elab-home-focus__future {
    padding-top: var(--elab-space-6, 24px);
}

.elab-home-focus__future-layout {
    display: grid;
    grid-template-columns: minmax(240px, 400px) minmax(0, 1fr);
    gap: var(--elab-space-6, 24px);
    align-items: start;
}

.elab-home-focus__future-banner {
    display: block;
    overflow: hidden;
    border-radius: var(--elab-radius-md, 8px);
    background: var(--elab-bg, #fff);
    box-shadow: var(--elab-shadow-sm, 0 1px 3px rgba(0, 0, 0, 0.06));
}

.elab-home-focus__future-banner img {
    display: block;
    width: 100%;
    aspect-ratio: 1 / 1;
    object-fit: cover;
}

.elab-home-focus__future-main {
    display: flex;
    flex-direction: column;
    height: 400px;
    min-width: 0;
    min-height: 0;
}

.elab-home-focus__future-grid {
    display: grid;
    flex: 1 1 auto;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: var(--elab-space-3, 12px);
    min-height: 0;
}

.elab-home-focus__future-card {
    display: flex;
    flex-direction: column;
    min-width: 0;
    min-height: 0;
    overflow: hidden;
    border: 1px solid var(--elab-border, #e5e7eb);
    border-radius: var(--elab-radius-md, 8px);
    background: var(--elab-bg, #fff);
    box-shadow: var(--elab-shadow-sm, 0 1px 3px rgba(0, 0, 0, 0.06));
    transition:
        border-color var(--elab-trans-base, 0.18s ease),
        box-shadow var(--elab-trans-base, 0.18s ease),
        transform var(--elab-trans-base, 0.18s ease);
}

.elab-home-focus__future-card:hover,
.elab-home-focus__future-card:focus-within {
    border-color: var(--elab-border-strong, #d1d5db);
    box-shadow: var(--elab-shadow-md, 0 4px 12px rgba(0, 0, 0, 0.08));
    transform: translateY(-1px);
}

.elab-home-focus__future-image-link {
    display: block;
    flex: 1 1 auto;
    min-height: 0;
    aspect-ratio: 3 / 4;
    overflow: hidden;
    background: var(--elab-bg-soft2, #f5f5f5);
}

.elab-home-focus__future-body {
    flex: 0 0 auto;
    display: grid;
    gap: 6px;
    padding: var(--elab-space-3, 12px);
}

.elab-home-focus__future-date {
    justify-self: start;
}

.elab-home-focus__future-title {
    margin: 0;
    font-size: var(--elab-fs-base, 14px);
    font-weight: var(--elab-fw-semibold, 600);
    line-height: var(--elab-lh-tight, 1.25);
}

.elab-home-focus__future-title a {
    color: var(--elab-text, #1a1a1a);
    text-decoration: none;
}

.elab-home-focus__future-title a:hover,
.elab-home-focus__future-title a:focus {
    color: var(--elab-green-dark, #3d8403);
    text-decoration: underline;
    text-decoration-color: rgba(74, 159, 4, 0.35);
}

.elab-home-focus__future-meta {
    margin: 0;
    color: var(--elab-text-muted, #6b7280);
    font-size: var(--elab-fs-xs, 11px);
    line-height: var(--elab-lh-snug, 1.4);
}

.elab-home-focus__future-empty,
.elab-home-focus__empty,
.elab-home-focus__custom-content {
    border: 1px dashed var(--elab-border-strong, #d1d5db);
    border-radius: var(--elab-radius-lg, 12px);
    background: var(--elab-bg-soft, #f1f3f4);
}

.elab-home-focus__future-empty {
    display: flex;
    align-items: center;
    gap: var(--elab-space-3, 12px);
    padding: var(--elab-space-5, 20px);
    color: var(--elab-text-muted, #6b7280);
}

.elab-home-focus__future-empty > .elab-home-focus__future-empty-icon {
    display: inline-grid;
    flex: 0 0 auto;
    width: 42px;
    height: 42px;
    place-items: center;
    border-radius: var(--elab-radius-md, 8px);
    background: var(--elab-green-soft, #f0f9e8);
    color: var(--elab-green-dark, #3d8403);
}

.elab-home-focus__future-empty-icon svg {
    width: 22px;
    height: 22px;
}

.elab-home-focus__future-empty-copy {
    min-width: 0;
}

.elab-home-focus__future-empty-copy strong,
.elab-home-focus__future-empty-copy span {
    display: block;
}

.elab-home-focus__future-empty-copy strong {
    margin-bottom: 2px;
    color: var(--elab-text, #1a1a1a);
    font-size: var(--elab-fs-base, 14px);
}

.elab-home-focus__future-empty-copy span {
    font-size: var(--elab-fs-sm, 12px);
}

.elab-home-focus__empty {
    padding: var(--elab-space-8, 32px);
}

.elab-home-focus__custom-content {
    padding: var(--elab-space-6, 24px);
}

@media (max-width: 980px) {
    .elab-home-focus__grid {
        grid-template-columns: 1fr;
    }

    .elab-home-focus__latest {
        display: block;
    }

    .elab-home-focus__future-layout {
        grid-template-columns: 1fr;
    }

    .elab-home-focus__future-main {
        height: auto;
    }

    .elab-home-focus__future-banner {
        max-width: 400px;
    }

    .elab-home-focus__future-grid {
        grid-template-columns: repeat(3, minmax(0, 1fr));
    }
}

@media (max-width: 720px) {
    .elab-home-focus {
        margin: var(--elab-space-6, 24px) 0;
    }

    .elab-home-focus__future-head {
        align-items: start;
        flex-direction: column;
    }

    .elab-home-focus__hero {
        grid-template-columns: 1fr;
    }

    .elab-home-focus__image-link,
    .elab-home-focus__image,
    .elab-home-focus__image-fallback {
        min-height: 0;
    }

    .elab-home-focus__image-link {
        aspect-ratio: 3 / 4;
        padding: 15px;
        background: var(--elab-bg, #fff);
    }

    .elab-home-focus__image {
        object-fit: contain;
    }

    .elab-home-focus__hero-body {
        padding: var(--elab-space-5, 20px);
    }

    .elab-home-focus__title {
        font-size: var(--elab-fs-3xl, 30px);
    }

    .elab-home-focus__facts {
        grid-template-columns: 1fr;
    }

    .elab-home-focus__future-banner {
        max-width: none;
    }

    .elab-home-focus__future-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
}

@media (max-width: 480px) {
    .elab-home-focus__mini-link {
        grid-template-columns: 24px 46px minmax(0, 1fr);
        gap: var(--elab-space-2, 8px);
        padding: var(--elab-space-3, 12px);
    }

    .elab-home-focus__mini-thumb {
        width: 46px;
        /* aspect-ratio 3/4 päritud ülevoolu reeglist */
    }

    .elab-home-focus__future-grid {
        grid-template-columns: 1fr;
    }

    .elab-home-focus__future-empty {
        align-items: flex-start;
    }
}


/* =========================================================================
   [elab_news_focus] — Artiklid (uudised) sektsioon
   --------------------------------------------------------------------------
   Layout: 1 suur kaart (hero) vasakul + 5 väiksema artikli list paremal.
   Päises kasutab UI-KIT-i .elab-section__head + .elab-section__action mustri.
   ========================================================================= */

.elab-news-focus__grid {
    display: grid;
    grid-template-columns: minmax(0, 1fr) minmax(280px, 38%);
    gap: var(--elab-space-6, 24px);
    align-items: start;
    padding: var(--elab-space-6, 24px); /* .elab-box raami sisepadding */
}

@media (max-width: 720px) {
    .elab-news-focus__grid {
        grid-template-columns: 1fr;
    }
}

/* ---- Hero kaart (1 suur) ---- */

.elab-news-focus__hero {
    display: flex;
    flex-direction: column;
    gap: var(--elab-space-3, 12px);
    min-width: 0;
}

.elab-news-focus__hero-image {
    display: block;
    aspect-ratio: 16 / 9;
    overflow: hidden;
    border-radius: var(--elab-radius-md, 8px);
    background: var(--elab-bg-soft2, #f5f5f5);
    line-height: 0;
}

.elab-news-focus__hero-image img,
.elab-news-focus__hero-img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
    transition: transform var(--elab-trans-base, 0.2s ease);
}

.elab-news-focus__hero-image:hover img {
    transform: scale(1.02);
}

.elab-news-focus__hero-body {
    display: flex;
    flex-direction: column;
    gap: var(--elab-space-2, 8px);
}

.elab-news-focus__hero-title {
    margin: 0;
    font-family: var(--elab-font-display, "Fraunces", Georgia, serif);
    font-size: var(--elab-fs-2xl, 24px);
    font-weight: var(--elab-fw-semibold, 600);
    line-height: var(--elab-lh-tight, 1.25);
    letter-spacing: -0.005em;
}

.elab-news-focus__hero-title a {
    color: var(--elab-text, #1a1a1a);
    text-decoration: none;
}

.elab-news-focus__hero-title a:hover {
    color: var(--elab-blue, #009ce2);
}

.elab-news-focus__hero-meta {
    color: var(--elab-text-muted, #6b7280);
    font-size: var(--elab-fs-sm, 13px);
    line-height: var(--elab-lh-snug, 1.4);
}

.elab-news-focus__hero-meta a {
    color: var(--elab-text-link, #00698c);
    text-decoration: none;
}

.elab-news-focus__hero-meta a:hover {
    color: var(--elab-blue, #009ce2);
}

.elab-news-focus__hero-excerpt {
    color: var(--elab-text, #1a1a1a);
    font-size: var(--elab-fs-base, 14px);
    line-height: var(--elab-lh-relaxed, 1.65);
}

.elab-news-focus__hero-excerpt p {
    margin: 0;
}

.elab-news-focus__hero-excerpt a {
    color: var(--elab-text-link, #00698c);
    text-decoration: none;
}

.elab-news-focus__hero-excerpt a:hover {
    color: var(--elab-blue, #009ce2);
}

/* ---- Side list (5 väiksemat artiklit) ---- */

.elab-news-focus__list {
    list-style: none;
    padding: 0;
    margin: 0;
    display: flex;
    flex-direction: column;
    gap: var(--elab-space-3, 12px);
    min-width: 0;
}

.elab-news-focus__item {
    display: flex;
    gap: var(--elab-space-3, 12px);
    align-items: flex-start;
    min-width: 0;
}

.elab-news-focus__item-thumb {
    flex: 0 0 64px;
    width: 64px;
    height: 64px;
    border-radius: var(--elab-radius-sm, 6px);
    overflow: hidden;
    background: var(--elab-bg-soft2, #f5f5f5);
    line-height: 0;
    display: block;
}

.elab-news-focus__item-thumb img,
.elab-news-focus__item-img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
}

.elab-news-focus__item-thumb-empty {
    display: block;
    width: 100%;
    height: 100%;
    background: var(--elab-bg-soft2, #f5f5f5);
}

.elab-news-focus__item-body {
    flex: 1;
    min-width: 0;
    display: flex;
    flex-direction: column;
    gap: 2px;
}

.elab-news-focus__item-title {
    font-weight: var(--elab-fw-semibold, 600);
    color: var(--elab-text, #1a1a1a);
    text-decoration: none;
    font-size: var(--elab-fs-base, 14px);
    line-height: var(--elab-lh-snug, 1.4);
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    overflow: hidden;
}

.elab-news-focus__item-title:hover {
    color: var(--elab-blue, #009ce2);
}

.elab-news-focus__item-date {
    color: var(--elab-text-muted, #6b7280);
    font-size: var(--elab-fs-sm, 13px);
}

/* Side-list esimene artikkel — veerulaiuse pildiga "feature" kaart */
.elab-news-focus__feature {
    display: flex;
    flex-direction: column;
    gap: var(--elab-space-2, 8px);
    min-width: 0;
    padding-bottom: var(--elab-space-3, 12px);
    border-bottom: 1px solid var(--elab-border, #e5e7eb);
}

.elab-news-focus__feature-image {
    display: block;
    aspect-ratio: 16 / 9;
    overflow: hidden;
    border-radius: var(--elab-radius-md, 8px);
    background: var(--elab-bg-soft2, #f5f5f5);
    line-height: 0;
}

.elab-news-focus__feature-image img,
.elab-news-focus__feature-img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
    transition: transform var(--elab-trans-base, 0.2s ease);
}

.elab-news-focus__feature-image:hover img {
    transform: scale(1.02);
}

.elab-news-focus__feature-title {
    font-family: var(--elab-font-display, "Fraunces", Georgia, serif);
    font-weight: var(--elab-fw-semibold, 600);
    font-size: var(--elab-fs-lg, 17px);
    line-height: var(--elab-lh-tight, 1.25);
    color: var(--elab-text, #1a1a1a);
    text-decoration: none;
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    overflow: hidden;
}

.elab-news-focus__feature-title:hover {
    color: var(--elab-blue, #009ce2);
}

.elab-news-focus__feature-date {
    color: var(--elab-text-muted, #6b7280);
    font-size: var(--elab-fs-sm, 13px);
}


/* =========================================================================
   [elab-kumnekas] — Kümnekad (bänner-stiilis kaart)
   --------------------------------------------------------------------------
   Üks postitus: vasakul pealkiri + meta + excerpt + "loe edasi" (valge body),
   paremal pilt ~335px, mis täidab kaardi kõrguse ja puutub kaardi paremat /
   ülemist / alumist serva (cover, overflow: hidden).
   ========================================================================= */

.elab-kumnekas-focus__card {
    display: grid;
    grid-template-columns: minmax(0, 1fr) 335px;
    gap: 0;
    background: var(--elab-bg, #fff);
    border: 1px solid var(--elab-border, #e5e7eb);
    border-radius: var(--elab-radius-lg, 12px);
    box-shadow: var(--elab-shadow-sm, 0 1px 3px rgba(0, 0, 0, 0.06));
    overflow: hidden;
    align-items: stretch;
}

.elab-kumnekas-focus__body {
    padding: var(--elab-space-5, 20px);
    display: flex;
    flex-direction: column;
    gap: var(--elab-space-2, 8px);
    min-width: 0;
}

.elab-kumnekas-focus__kicker {
    font-size: var(--elab-fs-xs, 11px);
    font-weight: var(--elab-fw-bold, 700);
    text-transform: uppercase;
    letter-spacing: 0.06em;
    color: var(--elab-green-dark, #3d8403);
    margin-bottom: var(--elab-space-2, 8px);
}

.elab-kumnekas-focus__title {
    margin: 0;
    font-family: var(--elab-font-display, "Fraunces", Georgia, serif);
    font-size: var(--elab-fs-2xl, 24px);
    font-weight: var(--elab-fw-semibold, 600);
    line-height: var(--elab-lh-tight, 1.25);
    letter-spacing: -0.005em;
}

.elab-kumnekas-focus__title a {
    color: var(--elab-text, #1a1a1a);
    text-decoration: none;
}

.elab-kumnekas-focus__title a:hover {
    color: var(--elab-blue, #009ce2);
}

.elab-kumnekas-focus__meta {
    color: var(--elab-text-muted, #6b7280);
    font-size: var(--elab-fs-sm, 13px);
    line-height: var(--elab-lh-snug, 1.4);
    padding-bottom: var(--elab-space-2, 8px);
    border-bottom: 1px solid var(--elab-border-soft, #f1f1f1);
    margin-bottom: var(--elab-space-1, 4px);
    display: flex;
    flex-wrap: wrap;
    gap: 6px;
}

.elab-kumnekas-focus__author {
    font-weight: var(--elab-fw-semibold, 600);
    color: var(--elab-text, #1a1a1a);
    text-transform: uppercase;
    letter-spacing: 0.04em;
    font-size: var(--elab-fs-xs, 11px);
    align-self: center;
}

.elab-kumnekas-focus__sep {
    color: var(--elab-text-muted, #6b7280);
}

.elab-kumnekas-focus__cat {
    color: var(--elab-text-link, #00698c);
    text-decoration: none;
}

.elab-kumnekas-focus__cat:hover {
    color: var(--elab-blue, #009ce2);
}

.elab-kumnekas-focus__excerpt {
    color: var(--elab-text, #1a1a1a);
    font-size: var(--elab-fs-base, 14px);
    line-height: var(--elab-lh-relaxed, 1.65);
}

.elab-kumnekas-focus__excerpt p {
    margin: 0;
}

.elab-kumnekas-focus__excerpt a {
    color: var(--elab-green-dark, #3d8403);
    text-decoration: none;
}

.elab-kumnekas-focus__excerpt a:hover {
    color: var(--elab-green-darker, #2e6502);
    text-decoration: underline;
}

.elab-kumnekas-focus__media {
    display: block;
    line-height: 0;
    background: var(--elab-bg-soft2, #f5f5f5);
    overflow: hidden;
    align-self: stretch;
}

.elab-kumnekas-focus__media img,
.elab-kumnekas-focus__img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
    transition: transform var(--elab-trans-base, 0.2s ease);
}

.elab-kumnekas-focus__media:hover img {
    transform: scale(1.02);
}

@media (max-width: 720px) {
    .elab-kumnekas-focus__card {
        grid-template-columns: 1fr;
    }

    .elab-kumnekas-focus__media {
        order: -1;
        aspect-ratio: 16 / 9;
    }
}


/* =========================================================================
   [elab_collection] — Nimekirjad (3 kaarti kõrvuti)
   --------------------------------------------------------------------------
   Iga kaart: thumb (uusima postituse pilt, 4:3) + pealkiri (N) + lisaja +
   tüüp + kuupäev + badge-stack (preview kaardid + "+N kirjet" rohkem-badge).
   ========================================================================= */

.elab-collection-focus__grid {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: var(--elab-space-4, 16px);
    align-items: stretch;
}

@media (max-width: 960px) {
    .elab-collection-focus__grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
}

@media (max-width: 600px) {
    .elab-collection-focus__grid {
        grid-template-columns: 1fr;
    }
}

.elab-collection-focus__card {
    position: relative;
    background: var(--elab-bg, #fff);
    border: 1px solid var(--elab-border, #e5e7eb);
    border-radius: var(--elab-radius-lg, 12px);
    box-shadow: var(--elab-shadow-sm, 0 1px 3px rgba(0, 0, 0, 0.06));
    padding: var(--elab-space-3, 12px);
    display: flex;
    flex-direction: row;
    gap: var(--elab-space-3, 12px);
    min-width: 0;
    transition: box-shadow var(--elab-trans-base, 0.2s ease);
}
/* Tüüp-tag kaardi parem-ülanurgas */
.elab-collection-focus__type {
    position: absolute;
    top: 10px;
    right: 10px;
    z-index: 2;
}
.elab-collection-focus__body { flex: 1 1 auto; min-width: 0; }
.elab-collection-focus__title { padding-right: 56px; }

.elab-collection-focus__card:hover {
    box-shadow: 0 4px 12px rgba(0, 0, 0, 0.08);
}

.elab-collection-focus__card.is-private {
    opacity: 0.7;
}

.elab-collection-focus__thumb {
    display: block;
    flex: 0 0 auto;
    width: 80px;
    max-width: 80px;
    max-height: 120px;
    aspect-ratio: 2 / 3;
    overflow: hidden;
    border-radius: var(--elab-radius-md, 8px);
    background: var(--elab-bg-soft2, #f5f5f5);
    line-height: 0;
}

.elab-collection-focus__thumb img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
    transition: transform var(--elab-trans-base, 0.2s ease);
}

.elab-collection-focus__thumb:hover img {
    transform: scale(1.03);
}

.elab-collection-focus__thumb--empty {
    background: var(--elab-bg-soft2, #f5f5f5);
}

.elab-collection-focus__body {
    display: flex;
    flex-direction: column;
    gap: var(--elab-space-1, 4px);
    min-width: 0;
    flex: 1;
}

.elab-collection-focus__title {
    margin: 0 0 5px;
    padding-bottom: 10px;
    border-bottom: 1px solid var(--elab-border-soft, #f0f0f0);
    font-family: var(--elab-font-display, "Fraunces", Georgia, serif);
    font-size: var(--elab-fs-lg, 18px);
    font-weight: var(--elab-fw-semibold, 600);
    line-height: var(--elab-lh-tight, 1.25);
    letter-spacing: -0.005em;
}

.elab-collection-focus__title a {
    color: var(--elab-text, #1a1a1a);
    text-decoration: none;
}

.elab-collection-focus__title a:hover {
    color: var(--elab-blue, #009ce2);
}

.elab-collection-focus__title small {
    color: var(--elab-text-muted, #6b7280);
    font-weight: var(--elab-fw-normal, 400);
    font-size: var(--elab-fs-sm, 13px);
    font-family: var(--elab-font-body, "Plus Jakarta Sans", sans-serif);
}

.elab-collection-focus__author {
    color: var(--elab-text-muted, #6b7280);
    font-size: var(--elab-fs-sm, 13px);
    line-height: var(--elab-lh-snug, 1.4);
}

.elab-collection-focus__author a {
    color: var(--elab-text-link, #00698c);
    text-decoration: none;
}

.elab-collection-focus__author a:hover {
    color: var(--elab-blue, #009ce2);
}

.elab-collection-focus__meta {
    color: var(--elab-text-muted, #6b7280);
    font-size: var(--elab-fs-sm, 13px);
    line-height: var(--elab-lh-snug, 1.4);
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 6px;
}

.elab-collection-focus__sep {
    color: var(--elab-text-muted, #6b7280);
    opacity: 0.6;
}

.elab-collection-focus__previews {
    display: flex;
    align-items: center;
    margin-top: auto;
    padding-top: var(--elab-space-2, 8px);
}

.elab-collection-focus__preview,
.elab-collection-focus__more {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 32px;
    height: 32px;
    border-radius: 50%;
    overflow: hidden;
    border: 2px solid var(--elab-bg, #fff);
    margin-left: -8px;
    background: var(--elab-bg-soft2, #f5f5f5);
    flex: 0 0 auto;
}

.elab-collection-focus__preview:first-child,
.elab-collection-focus__more:first-child {
    margin-left: 0;
}

.elab-collection-focus__preview a,
.elab-collection-focus__preview img {
    width: 100%;
    height: 100%;
    display: block;
    object-fit: cover;
}

.elab-collection-focus__more {
    color: var(--elab-text-muted, #6b7280);
    font-size: var(--elab-fs-sm, 13px);
}


/* =========================================================================
   [elab-birthdays] — Sünnipäevad (täna + homme), Glide.js slider
   --------------------------------------------------------------------------
   Pildikaardid 4:5 portree, tekst pildi peal gradient-overlay'ga.
   Tänase päeva sünnipäeval `.is-today` → alumine rida (vanus + kp) roheline.
   ========================================================================= */

.elab-birthdays-focus {
    position: relative;
}

.elab-birthdays-focus__head-right {
    display: flex;
    align-items: center;
    gap: var(--elab-space-3, 12px);
    flex: 0 0 auto;
}

.elab-birthdays-focus__arrows {
    display: inline-flex;
    align-items: center;
    gap: 2px;
}

/* Viimane sektsioon main'is — margin maha. */
.elab-section.elab-birthdays-focus { margin: 0; }
/* Nooled poster keskel slaidi äärtes (nagu lavastuse .elab-cast-carousel) */
.elab-birthdays-focus__viewport { position: relative; }
.elab-birthdays-focus__arrow {
    position: absolute;
    top: 50%;
    margin-top: -12px;
    transform: translateY(-50%);
    z-index: 3;
    width: 26px;
    height: 26px;
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 0;
    border: 1px solid var(--elab-border, #e5e7eb);
    border-radius: 50%;
    background: #fff;
    color: var(--elab-text-secondary, #374151);
    cursor: pointer;
    box-shadow: var(--elab-shadow-sm, 0 1px 3px rgba(0, 0, 0, 0.12));
    transition: opacity 0.15s ease;
}
.elab-birthdays-focus__arrow--prev { left: -15px; }
.elab-birthdays-focus__arrow--next { right: -15px; }
.elab-birthdays-focus__arrow:hover { color: var(--elab-text, #1a1a1a); }
/* Enne mount'i nooli pole; prev peidus alguses, next peidus lõpus (JS). */
.elab-birthdays-focus:not(.is-mounted) .elab-birthdays-focus__arrow { display: none; }
.elab-birthdays-focus.is-at-start .elab-birthdays-focus__arrow--prev,
.elab-birthdays-focus.is-at-end .elab-birthdays-focus__arrow--next,
.elab-birthdays-focus__arrow:disabled {
    opacity: 0;
    pointer-events: none;
}
.elab-birthdays-focus__arrow i {
    font-size: 12px;
    line-height: 1;
}

/* Glide.js haldab `.glide__slides` paigutus (display:flex transform:translate3d).
   Meie roll on lihtsalt baas: list-style 0, margin 0, padding 0. */
.elab-birthdays-focus__slides {
    list-style: none;
    margin: 0;
    padding: 0;
}

.elab-birthdays-focus__slide {
    min-width: 0;
}

.elab-birthdays-focus__track {
    overflow: hidden;
}

/* Enne Glide mount'i — fallback flex, et slidid oleks kõrvuti (mitte üksteise all). */
.elab-birthdays-focus:not(.is-mounted) .elab-birthdays-focus__slides {
    display: flex;
    gap: 12px;
}

.elab-birthdays-focus:not(.is-mounted) .elab-birthdays-focus__slide {
    flex: 0 0 calc((100% - 48px) / 5);
}

.elab-birthdays-focus__card {
    display: block;
    position: relative;
    aspect-ratio: 2 / 3;
    border-radius: var(--elab-radius-md, 8px);
    overflow: hidden;
    background: var(--elab-bg-soft2, #f5f5f5);
    line-height: 0;
    text-decoration: none;
    color: #fff;
}

.elab-birthdays-focus__img,
.elab-birthdays-focus__card img {
    width: 100%;
    height: auto;
    object-fit: cover;
    display: block;
    transition: transform var(--elab-trans-base, 0.2s ease);
	max-width: 173px;
}

.elab-birthdays-focus__card:hover img {
    transform: scale(1.04);
}

.elab-birthdays-focus__img--empty {
    background: var(--elab-bg-soft2, #f5f5f5);
}

.elab-birthdays-focus__overlay {
    position: absolute;
    bottom: 0;
    left: 0;
    right: 0;
    padding: 10px 12px 12px;
    display: flex;
    flex-direction: column;
    gap: 0;
    color: #fff;
    background: linear-gradient(to top,
        rgba(0, 0, 0, 0.88) 0%,
        rgba(0, 0, 0, 0.55) 55%,
        rgba(0, 0, 0, 0) 100%);
    line-height: var(--elab-lh-snug, 1.4);
    pointer-events: none;
}

.elab-birthdays-focus__name {
    font-family: var(--elab-font-display, "Fraunces", Georgia, serif);
    font-size: var(--elab-fs-lg, 17px);
    font-weight: var(--elab-fw-semibold, 600);
    color: #fff;
    letter-spacing: -0.005em;
    line-height: 1.2;
    margin-bottom: 2px;
}

.elab-birthdays-focus__role {
    font-size: var(--elab-fs-2xs, 9px);
    color: rgba(255, 255, 255, 0.85);
    text-transform: uppercase;
    letter-spacing: 0.06em;
    font-weight: var(--elab-fw-semibold, 600);
}

.elab-birthdays-focus__age {
    font-size: var(--elab-fs-sm, 13px);
    color: #fff;
    margin-top: 4px;
    font-weight: var(--elab-fw-bold, 700);
}

/* Tänase päeva sünnipäev — vanus + kp roheline accent. */
.elab-birthdays-focus__card.is-today .elab-birthdays-focus__age {
    color: var(--elab-green, #4a9f04);
    font-weight: var(--elab-fw-semibold, 600);
}

/* NB: ainult mount'imata fallback — mounted Glide haldab slaidi-laiust ise
   (inline width). Ilma :not(.is-mounted) scope'ita rakenduks flex-basis ka
   mounted olekus, kus `100%` = UL-i Glide-laius (3648px) → slaid ~1818px →
   UL plahvatab → mobiilne layout katki. */
@media (max-width: 960px) {
    .elab-birthdays-focus:not(.is-mounted) .elab-birthdays-focus__slide {
        flex-basis: calc((100% - 36px) / 4);
    }
}

@media (max-width: 720px) {
    .elab-birthdays-focus:not(.is-mounted) .elab-birthdays-focus__slide {
        flex-basis: calc((100% - 24px) / 3);
    }
}

@media (max-width: 480px) {
    .elab-birthdays-focus:not(.is-mounted) .elab-birthdays-focus__slide {
        flex-basis: calc((100% - 12px) / 2);
    }
}


/* =========================================================================
   [elab_items_focus variant="dark"] — DARK variant
   --------------------------------------------------------------------------
   Sarnane lavastuse headeri stiilile: --elab-dark-bw taust + opacity 0.3
   tausta-pildiga overlay, tekstid heledad, lingid --elab-light-blue.
   ========================================================================= */

/*
 * Full-bleed dark tausta haldab `.elab-home-focus-section--dark` (front-page.php
 * paneb selle wrapper'ile). `__bg` div on samuti seal section-tasandil, et
 * pildi overlay läheks servast servani.
 */
.elab-home-focus-section--dark {
    position: relative;
    background: var(--elab-dark-bw, #151515);
    overflow: hidden;
}

.elab-home-focus-section__bg {
    position: absolute;
    inset: 0;
    background-size: cover;
    background-position: center;
    background-repeat: no-repeat;
    opacity: 0.3;
    z-index: 1;
    pointer-events: none;
}

.elab-home-focus-section--dark > .section_wrapper {
    position: relative;
    z-index: 2;
}

/* Shortcode ise — dark kontekstis ainult padding-bottom + valge tekst. */
.elab-home-focus--dark {
    color: #fff;
    padding: 0 0 var(--elab-space-6, 24px);
}

/* Pealkirja-riba — pealkiri valge, action-link --elab-light-blue → hover #fff */
.elab-home-focus--dark .elab-section__title {
    color: #fff;
}

.elab-home-focus--dark .elab-section__action {
    color: var(--elab-light-blue, #4db4ea);
}

.elab-home-focus--dark .elab-section__action:hover,
.elab-home-focus--dark .elab-section__action:focus {
    color: #fff;
    text-decoration: underline;
}

/* Hero kaart — pakkimisel jätame veidi läbipaistva tausta, et säiliks loetavus */
.elab-home-focus--dark .elab-home-focus__hero {
    background: rgba(255, 255, 255, 0.04);
    border-color: rgba(255, 255, 255, 0.2);
    box-shadow: none;
}

.elab-home-focus--dark .elab-home-focus__image-link {
    background: transparent;
}

/* Hero title + lingid */
.elab-home-focus--dark .elab-home-focus__title {
    color: #fff;
}

.elab-home-focus--dark .elab-home-focus__title a,
.elab-home-focus--dark .elab-home-focus__future-title a {
    color: var(--elab-light-blue, #4db4ea);
    text-decoration-color: currentColor;
}

.elab-home-focus--dark .elab-home-focus__title a:hover,
.elab-home-focus--dark .elab-home-focus__future-title a:hover {
    color: #fff;
    text-decoration-color: currentColor;
}

/*
 * "Vaata lavastust" nupp dark variandis — valge raam + valge tekst + transparent
 * taust. Hoveril valge taust + tume tekst.
 */
.elab-home-focus--dark .elab-home-focus__actions .elab-btn,
.elab-home-focus--dark .elab-home-focus__actions .elab-btn--primary {
    background: transparent;
    color: #fff;
    border: 1px solid #fff;
    box-shadow: none;
}

.elab-home-focus--dark .elab-home-focus__actions .elab-btn:hover,
.elab-home-focus--dark .elab-home-focus__actions .elab-btn:focus,
.elab-home-focus--dark .elab-home-focus__actions .elab-btn--primary:hover,
.elab-home-focus--dark .elab-home-focus__actions .elab-btn--primary:focus {
    background: #fff;
    color: var(--elab-dark-bw, #151515);
    border-color: #fff;
}

.elab-home-focus--dark .elab-home-focus__muted {
    color: rgba(255, 255, 255, 0.7);
}

.elab-home-focus--dark .elab-home-focus__excerpt {
    color: rgba(255, 255, 255, 0.88);
}

/* Facts (Teater/Autor/Lavastaja/Osades) */
.elab-home-focus--dark .elab-home-focus__facts dt {
    color: rgba(255, 255, 255, 0.6);
}

.elab-home-focus--dark .elab-home-focus__facts dd {
    color: rgba(255, 255, 255, 0.92);
}

.elab-home-focus--dark .elab-home-focus__fact a {
    color: var(--elab-light-blue, #4db4ea);
	font-weight: 700;
}

.elab-home-focus--dark .elab-home-focus__fact a:hover {
    color: #fff;
}

/* Kompaktne side-list "Veel värskeid" */
.elab-home-focus--dark .elab-home-focus__latest {
    background: rgba(255, 255, 255, 0.04);
    border-color: rgba(255, 255, 255, 0.2);
}

.elab-home-focus--dark .elab-home-focus__latest-head h3 {
    color: #fff;
}

.elab-home-focus--dark .elab-home-focus__latest-head span {
    color: rgba(255, 255, 255, 0.7);
    background: rgba(255, 255, 255, 0.08);
}

.elab-home-focus--dark .elab-home-focus__mini-link {
    color: rgba(255, 255, 255, 0.92);
}

.elab-home-focus--dark .elab-home-focus__mini-link:hover {
    background: rgba(255, 255, 255, 0.05);
}

.elab-home-focus--dark .elab-home-focus__mini-rank {
    color: var(--elab-light-blue, #4db4ea);
}

.elab-home-focus--dark .elab-home-focus__mini-title {
    color: #fff;
}

.elab-home-focus--dark .elab-home-focus__mini-meta {
    color: rgba(255, 255, 255, 0.65);
}

/* Varsti laval - alajaotus */
.elab-home-focus--dark .elab-home-focus__future-head h3 {
    color: #fff;
}

.elab-home-focus--dark .elab-home-focus__future-link {
    color: var(--elab-light-blue, #4db4ea);
}

.elab-home-focus--dark .elab-home-focus__future-link:hover {
    color: #fff;
}

.elab-home-focus--dark .elab-home-focus__future-card {
    background: rgba(255, 255, 255, 0.04);
    border-color: rgba(255, 255, 255, 0.2);
}

.elab-home-focus--dark .elab-home-focus__future-meta {
    color: rgba(255, 255, 255, 0.7);
}

.elab-home-focus--dark .elab-home-focus__future-empty {
    background: rgba(255, 255, 255, 0.04);
    border-color: rgba(255, 255, 255, 0.2);
    color: rgba(255, 255, 255, 0.85);
}

.elab-home-focus--dark .elab-home-focus__future-empty strong {
    color: #fff;
}

/* Badge'id — taustal kontrastsuse jaoks heledamad */
.elab-home-focus--dark .elab-badge--default {
    background: rgba(255, 255, 255, 0.2);
    color: #fff;
    border-color: transparent;
}

.elab-home-focus--dark .elab-badge--default:hover {
    background: rgba(255, 255, 255, 0.2);
    color: #fff;
}
