/* Rikoooo homepage surface extracted from custom.css - Codex 2026-07-08. */
/* Loaded on the homepage after custom.css; header/footer/account/download surfaces stay outside this file. */
/* The current aviation/proportion layer is grouped at the end of this file. */

/* Catalogue access belongs with the introduction, before the featured add-on. */
.riko-home-catalog-links {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
    margin: 18px 0;
}

.riko-home-catalog-links a {
    display: inline-flex;
    align-items: center;
    min-height: 44px;
    box-sizing: border-box;
    padding: 8px 12px;
    border: 1px solid var(--riko-line);
    border-radius: 6px;
    background: var(--riko-surface);
    color: var(--riko-link);
    font-size: 14px;
    font-weight: 600;
    line-height: 1.3;
    text-decoration: none;
}

.riko-home-catalog-links a:hover {
    color: var(--riko-action-hover);
    border-color: var(--riko-action-hover);
    background: var(--riko-action-soft-hover);
}

.riko-home-catalog-links a:focus-visible {
    outline: 3px solid var(--riko-focus);
    outline-offset: 3px;
}

/* Rikoooo home carousel consistency v6 - Codex 2026-06-21 */
#tm-top-b .tabrikoo2 .uk-slider > li > div > .uk-panel-box-primary {
    overflow: hidden;
    border: 1px solid var(--riko-line) !important;
    border-radius: 8px !important;
    background: var(--riko-surface) !important;
    box-shadow: 0 5px 16px color-mix(in srgb, var(--riko-brand-deep) 8%, transparent) !important;
    color: var(--riko-link) !important;
}

#tm-top-b .tabrikoo2 .uk-panel-teaser {
    margin: 0 !important;
    background: var(--riko-surface) !important;
}

#tm-top-b .tabrikoo2 figure,
#tm-top-b .tabrikoo2 img {
    display: block;
    width: 100% !important;
    border-radius: 8px 8px 0 0 !important;
}

#tm-top-b .tabrikoo2 .uk-panel-teaser > div:first-of-type:not(.forall) {
    padding: 13px 14px 11px !important;
    background: var(--riko-surface) !important;
    color: var(--riko-link) !important;
    font-size: 16px !important;
    font-weight: 800 !important;
    line-height: 1.32 !important;
}

#tm-top-b .tabrikoo2 .uk-panel-teaser > div:first-of-type:not(.forall) a,
#tm-top-b .tabrikoo2 .uk-panel-teaser > div:first-of-type:not(.forall) h3,
#tm-top-b .tabrikoo2 .uk-panel-teaser > div:first-of-type:not(.forall) b {
    color: var(--riko-link) !important;
    font-size: 16px !important;
    font-weight: 800 !important;
    line-height: 1.32 !important;
    text-decoration: none !important;
}

#tm-top-b .tabrikoo2 .forall {
    padding: 0 12px 14px !important;
    background: var(--riko-surface) !important;
    color: var(--riko-muted) !important;
    font-size: 13px !important;
    line-height: 1.45 !important;
}

#tm-top-b .tabrikoo2 .uk-list {
    margin: 0 !important;
}

#tm-top-b .tabrikoo2 .uk-list-striped > li {
    min-height: 30px;
    padding: 7px 0 !important;
    border-top: 1px solid var(--riko-line) !important;
    background: transparent !important;
    color: var(--riko-muted) !important;
}

#tm-top-b .tabrikoo2 .uk-list-striped > li a,
#tm-top-b .tabrikoo2 .uk-list-striped > li span,
#tm-top-b .tabrikoo2 .uk-text-truncate {
    color: inherit;
}

#tm-top-b .tabrikoo2 .uk-icon-star {
    color: var(--riko-rating) !important;
}

#tm-top-b .tabrikoo2 .uk-icon-download {
    color: var(--riko-action) !important;
}


/* Rikoooo homepage Ajax arrows v10 - Codex 2026-06-21 */
#tabfsxnew,
#tabfsxupdated,
#tabfsxrated,
.riko-ajax-carousel {
    position: relative;
}

.riko-ajax-carousel .uk-slidenav {
    display: none !important;
}

.riko-ajax-carousel .riko-module-content {
    overflow: hidden;
    position: relative;
    cursor: grab;
    touch-action: pan-y;
    transform: translateX(0);
    transition: height .18s ease, min-height .18s ease;
    will-change: transform, opacity;
}

.riko-ajax-carousel .riko-module-content ul.uk-slider {
    align-items: flex-start;
    transition: transform .32s cubic-bezier(.22,.61,.36,1);
}

.riko-ajax-carousel .riko-module-content.riko-module-is-dragging {
    cursor: grabbing;
    user-select: none;
}

.riko-ajax-carousel .riko-module-content.riko-module-snap-back {
    transition: transform .22s cubic-bezier(.2,.7,.25,1);
}

.riko-ajax-carousel .riko-module-content.riko-module-is-animating {
    cursor: default;
}

.riko-module-slide-layer {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    min-height: 100%;
    transform: translateX(0);
    transition: transform .42s cubic-bezier(.22,.61,.36,1);
    will-change: transform;
}

.riko-ajax-carousel .riko-module-arrow {
    position: absolute;
    top: 50%;
    z-index: 20;
    display: inline-flex;
    width: 42px;
    height: 54px;
    align-items: center;
    justify-content: center;
    box-sizing: border-box;
    border: 1px solid color-mix(in srgb, var(--riko-inverse) 55%, transparent);
    border-radius: 8px;
    background: color-mix(in srgb, var(--riko-brand) 88%, transparent);
    box-shadow: 0 8px 22px color-mix(in srgb, var(--riko-brand-deep) 22%, transparent);
    color: var(--riko-on-brand);
    cursor: pointer;
    font-size: 32px;
    font-weight: 800;
    line-height: 1;
    opacity: 0;
    text-shadow: none;
    transform: translateY(-50%);
    transition: opacity .16s ease, background .16s ease, transform .16s ease;
}

.riko-ajax-carousel .riko-module-arrow-prev {
    left: 10px;
}

.riko-ajax-carousel .riko-module-arrow-next {
    right: 10px;
}

.riko-ajax-carousel:hover .riko-module-arrow,
.riko-ajax-carousel:focus-within .riko-module-arrow {
    opacity: 1;
}

.riko-ajax-carousel .riko-module-arrow:hover,
.riko-ajax-carousel .riko-module-arrow:focus {
    background: color-mix(in srgb, var(--riko-action-hover) 96%, transparent);
    color: var(--riko-action-contrast);
    outline: 0;
    transform: translateY(-50%) scale(1.03);
}

.riko-ajax-carousel .riko-module-arrow[disabled] {
    cursor: default;
    opacity: 0 !important;
    pointer-events: none;
}

.riko-ajax-carousel.riko-module-is-loading .riko-module-arrow {
    cursor: progress;
    opacity: .42;
}

.riko-ajax-carousel.riko-module-is-loading .riko-module-arrow[disabled] {
    opacity: 0 !important;
}

@media (prefers-reduced-motion: reduce) {
    .riko-module-slide-layer,
    .riko-ajax-carousel .riko-module-content ul.uk-slider,
    .riko-ajax-carousel .riko-module-content.riko-module-snap-back {
        transition: none !important;
    }
}

@media (max-width: 760px) {
    .riko-ajax-carousel .riko-module-content,
    .riko-ajax-carousel .uk-slider-container,
    .riko-ajax-carousel .uk-slider,
    .riko-ajax-carousel .uk-slider > li {
        max-height: none !important;
    }

    .riko-ajax-carousel .uk-slider > li {
        align-self: flex-start !important;
    }

    .riko-ajax-carousel .riko-module-arrow {
        top: 28%;
        width: 36px;
        height: 46px;
        font-size: 26px;
        opacity: .92;
    }

    .riko-ajax-carousel .riko-module-arrow-prev {
        left: 6px;
    }

    .riko-ajax-carousel .riko-module-arrow-next {
        right: 6px;
    }
}


/* Rikoooo home module lazy placeholder guard v12 - Codex 2026-06-21 */
#tm-top-b .uk-slider .uk-panel-box-primary img[src="//:0"][class*="uk-overlay-spin"],
#tm-bottom-a .uk-slider .uk-panel-box-primary img[src="//:0"][class*="uk-overlay-spin"],
#tm-bottom-b .uk-slider .uk-panel-box-primary img[src="//:0"][class*="uk-overlay-spin"],
#tm-bottom-c .uk-slider .uk-panel-box-primary img[src="//:0"][class*="uk-overlay-spin"] {
    display: none !important;
}


/* Rikoooo random files grid alignment v16 - Codex 2026-06-21 */
#tm-bottom-b .riko-random-grid:before,
#tm-bottom-b .riko-random-grid:after {
    display: none !important;
    content: none !important;
}

#tm-bottom-b .riko-random-grid {
    grid-auto-flow: row;
}

#tm-bottom-b .riko-random-item {
    float: none !important;
    width: 100% !important;
    max-width: 100% !important;
    box-sizing: border-box !important;
}

#tm-bottom-b .riko-random-card,
#tm-bottom-b .riko-random-card article,
#tm-bottom-b .riko-random-card .uk-panel-teaser {
    height: 100%;
    box-sizing: border-box;
}


/* Rikoooo mobile home module headings compact v19 - Codex 2026-06-22 */
@media (max-width: 640px) {
    #tm-top-b .uk-panel-box-secondary[style*="line-height: 50px"],
    #tm-bottom-a .uk-panel-box-secondary[style*="line-height: 50px"] {
        display: flex !important;
        min-height: 58px !important;
        height: auto !important;
        align-items: center !important;
        padding: 12px 16px !important;
        line-height: 1.18 !important;
        font-size: 20px !important;
        font-weight: 900 !important;
    }
}


/* Rikoooo homepage equal cards v55 - Codex 2026-06-22 */
@media (min-width: 761px) {
    .riko-ajax-carousel .uk-slider > li,
    #tm-top-b .uk-slider > li,
    #tm-bottom-a .uk-slider > li,
    #tm-bottom-b .uk-slider > li,
    #tm-bottom-c .uk-slider > li {
        align-items: stretch !important;
    }

    .riko-ajax-carousel .uk-slider > li > div,
    #tm-top-b .uk-slider > li > div,
    #tm-bottom-a .uk-slider > li > div,
    #tm-bottom-b .uk-slider > li > div,
    #tm-bottom-c .uk-slider > li > div,
    #tm-bottom-b .riko-random-item {
        display: flex !important;
        width: 100%;
        height: 100%;
        min-height: 100%;
    }

    .riko-ajax-carousel .uk-slider > li > div > .uk-panel-box-primary,
    #tm-top-b .uk-slider > li > div > .uk-panel-box-primary,
    #tm-bottom-a .uk-slider > li > div > .uk-panel-box-primary,
    #tm-bottom-b .uk-slider > li > div > .uk-panel-box-primary,
    #tm-bottom-c .uk-slider > li > div > .uk-panel-box-primary,
    #tm-bottom-b .riko-random-card {
        display: flex !important;
        width: 100%;
        height: 100% !important;
        min-height: 100% !important;
        flex-direction: column;
        box-sizing: border-box;
    }

    #tm-bottom-b .riko-random-card > article {
        display: flex;
        height: 100%;
        min-height: 100%;
        flex-direction: column;
    }

    .riko-ajax-carousel .uk-slider > li > div > .uk-panel-box-primary > .uk-panel-teaser,
    #tm-top-b .uk-slider > li > div > .uk-panel-box-primary > .uk-panel-teaser,
    #tm-bottom-a .uk-slider > li > div > .uk-panel-box-primary > .uk-panel-teaser,
    #tm-bottom-b .uk-slider > li > div > .uk-panel-box-primary > .uk-panel-teaser,
    #tm-bottom-c .uk-slider > li > div > .uk-panel-box-primary > .uk-panel-teaser,
    #tm-bottom-b .riko-random-card .uk-panel-teaser {
        display: flex;
        min-height: 0;
        flex: 1 1 auto;
        flex-direction: column;
    }

    .riko-ajax-carousel .uk-panel-teaser > div[style*="position: relative"],
    #tm-top-b .uk-panel-teaser > div[style*="position: relative"],
    #tm-bottom-a .uk-panel-teaser > div[style*="position: relative"],
    #tm-bottom-b .uk-panel-teaser > div[style*="position: relative"],
    #tm-bottom-c .uk-panel-teaser > div[style*="position: relative"],
    #tm-bottom-b .riko-random-card .riko-random-body {
        margin-top: auto;
    }
}

/* Rikoooo homepage media stack guard v56 - Codex 2026-06-22 */
#tm-top-b [id^="mySlides"],
#tm-bottom-a [id^="mySlides"],
#tm-bottom-b [id^="mySlides"],
#tm-bottom-c [id^="mySlides"] {
    position: relative;
    display: block;
    width: 100%;
    aspect-ratio: 16 / 9;
    overflow: hidden;
    background: var(--riko-action-soft) url('/images/loading.gif') no-repeat 50% 50%;
}

#tm-top-b [id^="mySlides"] > div,
#tm-bottom-a [id^="mySlides"] > div,
#tm-bottom-b [id^="mySlides"] > div,
#tm-bottom-c [id^="mySlides"] > div {
    position: absolute;
    inset: 0;
    width: 100%;
    height: 100%;
}

#tm-top-b [id^="mySlides"] > div > a,
#tm-bottom-a [id^="mySlides"] > div > a,
#tm-bottom-b [id^="mySlides"] > div > a,
#tm-bottom-c [id^="mySlides"] > div > a {
    display: block;
    width: 100%;
    height: 100%;
}

#tm-top-b [id^="mySlides"] img,
#tm-bottom-a [id^="mySlides"] img,
#tm-bottom-b [id^="mySlides"] img,
#tm-bottom-c [id^="mySlides"] img {
    display: block;
    width: 100% !important;
    height: 100% !important;
    object-fit: cover;
}

/* Rikoooo homepage slider card redesign v57 - Codex 2026-06-22 */
#tm-top-b .riko-ajax-carousel {
    margin-bottom: 16px;
}

#tm-top-b .uk-panel.uk-panel-box.uk-panel-box-secondary {
    display: flex !important;
    min-height: 64px;
    align-items: center;
    padding: 0 22px !important;
    border: 1px solid color-mix(in srgb, var(--riko-line) 16%, transparent) !important;
    background: linear-gradient(135deg, var(--riko-brand) 0%, var(--riko-brand-deep) 100%) !important;
    box-shadow: 0 12px 28px color-mix(in srgb, var(--riko-brand-deep) 14%, transparent) !important;
}

#tm-top-b .uk-panel.uk-panel-box.uk-panel-box-secondary span,
#tm-top-b .uk-panel.uk-panel-box.uk-panel-box-secondary strong,
#tm-top-b .uk-panel.uk-panel-box.uk-panel-box-secondary b {
    color: var(--riko-on-brand) !important;
    font-size: 26px !important;
    font-weight: 900 !important;
    letter-spacing: 0 !important;
    line-height: 1.12 !important;
}

#tm-top-b .riko-ajax-carousel .uk-panel-box-primary {
    overflow: hidden;
    border: 1px solid var(--riko-line) !important;
    border-radius: 8px !important;
    background: linear-gradient(180deg, var(--riko-surface) 0%, var(--riko-surface) 100%) !important;
    box-shadow: 0 12px 30px color-mix(in srgb, var(--riko-brand-deep) 10%, transparent) !important;
    color: var(--riko-link) !important;
    transition: border-color .18s ease, box-shadow .18s ease, transform .18s ease;
}

#tm-top-b .riko-ajax-carousel .uk-panel-box-primary:hover,
#tm-top-b .riko-ajax-carousel .uk-panel-box-primary:focus-within {
    box-shadow: 0 18px 40px color-mix(in srgb, var(--riko-brand-deep) 15%, transparent) !important;
    transform: translateY(-2px);
}

#tm-top-b .riko-ajax-carousel .uk-panel-teaser {
    background: transparent !important;
}

#tm-top-b .riko-ajax-carousel .uk-panel-teaser > a:first-child {
    display: block;
    overflow: hidden;
    border-bottom: 1px solid var(--riko-line);
}

#tm-top-b .riko-ajax-carousel .uk-panel-teaser figure.uk-overlay,
#tm-top-b .riko-ajax-carousel .uk-panel-teaser [id^="mySlides"] {
    border-radius: 8px 8px 0 0 !important;
}

#tm-top-b .riko-ajax-carousel .uk-panel-teaser [id^="mySlides"]:after {
    position: absolute;
    inset: auto 0 0 0;
    height: 42%;
    background: linear-gradient(180deg, color-mix(in srgb, var(--riko-brand-deep) 0%, transparent) 0%, color-mix(in srgb, var(--riko-brand-deep) 20%, transparent) 100%);
    content: "";
    pointer-events: none;
}

#tm-top-b .riko-ajax-carousel .uk-panel-teaser img {
    filter: saturate(1.03) contrast(1.02);
}

#tm-top-b .riko-ajax-carousel .uk-panel-box-primary:hover .uk-panel-teaser img {
    transform: scale(1.035);
}

#tm-top-b .riko-ajax-carousel .uk-panel-teaser > div[style*="padding: 10px"] {
    display: flex;
    min-height: 66px;
    align-items: flex-start;
    box-sizing: border-box;
    padding: 14px 16px 8px !important;
}

#tm-top-b .riko-ajax-carousel .uk-panel-teaser > div[style*="padding: 10px"] a,
#tm-top-b .riko-ajax-carousel .uk-panel-teaser > div[style*="padding: 10px"] h3,
#tm-top-b .riko-ajax-carousel .uk-panel-teaser > div[style*="padding: 10px"] b {
    display: -webkit-box !important;
    overflow: hidden;
    color: var(--riko-link) !important;
    font-size: 17px !important;
    font-weight: 900 !important;
    letter-spacing: 0 !important;
    line-height: 1.22 !important;
    text-decoration: none !important;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 2;
}

#tm-top-b .riko-ajax-carousel .uk-panel-teaser > div[style*="padding: 10px"] a:hover,
#tm-top-b .riko-ajax-carousel .uk-panel-teaser > div[style*="padding: 10px"] a:focus {
    color: var(--riko-focus) !important;
}

#tm-top-b .riko-ajax-carousel .uk-panel-teaser > div[style*="position: relative"] {
    width: 100%;
    box-sizing: border-box;
    padding: 0 16px 14px;
}

#tm-top-b .riko-ajax-carousel .forall,
#tm-top-b .riko-ajax-carousel .uk-list.uk-list-striped {
    margin: 0 !important;
    padding: 0 !important;
}

#tm-top-b .riko-ajax-carousel .uk-list.uk-list-striped {
    display: grid;
    gap: 8px;
}

#tm-top-b .riko-ajax-carousel .uk-list.uk-list-striped > li {
    display: flex;
    min-width: 0;
    min-height: 32px;
    align-items: center;
    justify-content: space-between;
    gap: 10px;
    margin: 0 !important;
    padding: 0 !important;
    border: 0 !important;
    background: transparent !important;
    color: var(--riko-muted) !important;
    font-size: 13px !important;
    line-height: 1.25 !important;
}

#tm-top-b .riko-ajax-carousel .uk-list.uk-list-striped > li:first-child {
    border: 1px solid var(--riko-line) !important;
    border-radius: 8px;
    background: var(--riko-surface) !important;
}

#tm-top-b .riko-ajax-carousel .uk-list.uk-list-striped > li:nth-child(n+2) {
    padding-top: 7px !important;
    border-top: 1px solid var(--riko-line) !important;
}

#tm-top-b .riko-ajax-carousel .uk-list.uk-list-striped p {
    width: 100%;
    margin: 0 !important;
    color: var(--riko-muted) !important;
    font-size: 13px !important;
    line-height: 1.25 !important;
}

#tm-top-b .riko-ajax-carousel .uk-list.uk-list-striped > li:nth-child(n+2) p {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 8px;
}

#tm-top-b .riko-ajax-carousel .uk-list.uk-list-striped .uk-align-right,
#tm-top-b .riko-ajax-carousel .uk-list.uk-list-striped span[style*="float: right"] {
    float: none !important;
    flex: 0 0 auto;
    margin: 0 0 0 auto !important;
    color: var(--riko-muted) !important;
    font-weight: 800;
    text-align: right;
    white-space: nowrap;
}

#tm-top-b .riko-ajax-carousel .uk-list.uk-list-striped .uk-text-truncate,
#tm-top-b .riko-ajax-carousel .uk-list.uk-list-striped > li:last-child div {
    min-width: 0;
    color: var(--riko-muted) !important;
    font-weight: 650;
}

#tm-top-b .riko-ajax-carousel .uk-list.uk-list-striped > li:last-child {
    min-height: 30px;
    color: var(--riko-muted) !important;
}

#tm-top-b .riko-ajax-carousel .uk-list.uk-list-striped i {
    color: var(--riko-action) !important;
    opacity: .9;
}

#tm-top-b .riko-ajax-carousel .uk-list.uk-list-striped .uk-icon-download,
#tm-top-b .riko-ajax-carousel .uk-list.uk-list-striped .uk-icon-star {
    color: inherit !important;
}

#tm-top-b .riko-ajax-carousel .riko-module-arrow {
    width: 44px;
    height: 44px;
    border: 1px solid color-mix(in srgb, var(--riko-inverse) 72%, transparent) !important;
    border-radius: 999px;
    background: color-mix(in srgb, var(--riko-brand) 90%, transparent);
    box-shadow: 0 14px 30px color-mix(in srgb, var(--riko-brand-deep) 22%, transparent) !important;
    font-size: 28px;
}

#tm-top-b .riko-ajax-carousel .riko-module-arrow-prev {
    left: 12px;
}

#tm-top-b .riko-ajax-carousel .riko-module-arrow-next {
    right: 12px;
}

@media (max-width: 960px) {
    #tm-top-b .riko-ajax-carousel .uk-panel-box-primary:hover,
    #tm-top-b .riko-ajax-carousel .uk-panel-box-primary:focus-within {
        transform: none;
    }
}

@media (max-width: 640px) {
    #tm-top-b .uk-panel.uk-panel-box.uk-panel-box-secondary {
        min-height: 62px;
        padding: 0 18px !important;
    }

    #tm-top-b .uk-panel.uk-panel-box.uk-panel-box-secondary span,
    #tm-top-b .uk-panel.uk-panel-box.uk-panel-box-secondary strong,
    #tm-top-b .uk-panel.uk-panel-box.uk-panel-box-secondary b {
        font-size: clamp(24px, 7vw, 31px) !important;
    }

    #tm-top-b .riko-ajax-carousel .uk-panel-teaser > div[style*="padding: 10px"] {
        min-height: 72px;
        padding: 15px 16px 9px !important;
    }

    #tm-top-b .riko-ajax-carousel .uk-panel-teaser > div[style*="padding: 10px"] a,
    #tm-top-b .riko-ajax-carousel .uk-panel-teaser > div[style*="padding: 10px"] h3,
    #tm-top-b .riko-ajax-carousel .uk-panel-teaser > div[style*="padding: 10px"] b {
        font-size: 18px !important;
    }

    #tm-top-b .riko-ajax-carousel .uk-panel-teaser > div[style*="position: relative"] {
        padding: 0 16px 16px;
    }

    #tm-top-b .riko-ajax-carousel .uk-list.uk-list-striped {
        gap: 9px;
    }

    #tm-top-b .riko-ajax-carousel .uk-list.uk-list-striped > li:first-child {
        align-items: flex-start;
        flex-wrap: wrap;
    }
}

/* Rikoooo homepage module polish v58 - Codex 2026-06-22 */
#tm-top-b .uk-panel.uk-panel-box.uk-panel-box-secondary {
    position: relative;
    overflow: hidden;
    margin-bottom: 0 !important;
    border-radius: 8px 8px 0 0 !important;
}

#tm-top-b .uk-panel.uk-panel-box.uk-panel-box-secondary:before,
#tm-bottom-b .riko-random-heading-row .uk-panel-box-secondary:before {
    width: 4px;
    align-self: stretch;
    margin: 0 14px 0 -6px;
    border-radius: 999px;
    background: var(--riko-action);
    content: "";
}

#tm-top-b .uk-panel.uk-panel-box.uk-panel-box-secondary + .riko-ajax-carousel {
    margin-bottom: 24px;
    padding: 14px;
    border: 1px solid var(--riko-line);
    border-top: 0;
    border-radius: 0 0 8px 8px;
    background: linear-gradient(180deg, var(--riko-surface) 0%, var(--riko-surface-soft) 100%);
    box-shadow: 0 18px 42px color-mix(in srgb, var(--riko-brand-deep) 10%, transparent);
}

#tm-top-b .uk-panel.uk-panel-box.uk-panel-box-secondary + .riko-ajax-carousel .uk-slider-container {
    overflow: hidden;
    border-radius: 8px;
}

#tm-top-b .riko-ajax-carousel .uk-panel-box-primary {
    border-color: var(--riko-line) !important;
    background: var(--riko-surface) !important;
    box-shadow: 0 8px 22px color-mix(in srgb, var(--riko-brand-deep) 8%, transparent) !important;
}

#tm-top-b .riko-ajax-carousel .uk-panel-box-primary:hover,
#tm-top-b .riko-ajax-carousel .uk-panel-box-primary:focus-within {
    border-color: var(--riko-focus-on-brand) !important;
    box-shadow: 0 16px 34px color-mix(in srgb, var(--riko-brand-deep) 14%, transparent) !important;
}

#tm-top-b .riko-ajax-carousel .uk-panel-teaser > a:first-child {
    border-bottom-color: var(--riko-line);
}

#tm-top-b .riko-ajax-carousel .uk-panel-teaser > div[style*="padding: 10px"] {
    border-bottom: 1px solid var(--riko-line);
}

#tm-top-b .riko-ajax-carousel .uk-list.uk-list-striped > li:first-child {
    display: grid;
    min-height: 58px;
    align-items: center;
    grid-template-columns: minmax(0, 1fr);
    gap: 6px;
    padding: 10px 12px !important;
}

#tm-top-b .riko-ajax-carousel .uk-list.uk-list-striped > li:first-child .uk-align-right {
    display: block;
    order: 2;
    width: 100%;
    overflow: hidden;
    color: var(--riko-muted) !important;
    font-size: 12.5px;
    font-weight: 850;
    line-height: 1.25;
    text-align: left;
    text-overflow: ellipsis;
    white-space: nowrap;
}

#tm-top-b .riko-ajax-carousel .uk-list.uk-list-striped > li:first-child .uk-text-truncate {
    order: 1;
    width: 100%;
}

#tm-top-b .riko-ajax-carousel .uk-list.uk-list-striped > li:first-child .uk-text-truncate p {
    overflow: hidden;
    color: var(--riko-muted) !important;
    font-size: 12.5px !important;
    font-weight: 800;
    text-overflow: ellipsis;
    white-space: nowrap;
}

#tm-top-b .riko-ajax-carousel .uk-list.uk-list-striped > li:first-child .uk-text-truncate i {
    color: var(--riko-action) !important;
}

#tm-top-b .riko-ajax-carousel .riko-module-arrow {
    z-index: 15;
    border-color: color-mix(in srgb, var(--riko-surface) 90%, transparent) !important;
    background: color-mix(in srgb, var(--riko-brand) 92%, transparent);
    color: var(--riko-on-brand) !important;
}

#tm-bottom-b .uk-panel.uk-panel-box.uk-padding-remove {
    border-color: var(--riko-line) !important;
    background: linear-gradient(180deg, var(--riko-surface) 0%, var(--riko-surface-soft) 100%) !important;
    box-shadow: 0 18px 42px color-mix(in srgb, var(--riko-brand-deep) 10%, transparent) !important;
}

#tm-bottom-b .riko-random-heading-row {
    margin: 0 !important;
}

#tm-bottom-b .riko-random-heading-row > .uk-width-1-1 {
    margin-bottom: 0 !important;
}

#tm-bottom-b .riko-random-heading-row .uk-panel-box-secondary {
    position: relative;
    overflow: hidden;
    margin: 0 !important;
    border-radius: 8px 8px 0 0 !important;
}

#tm-bottom-b .riko-random-grid {
    gap: 14px;
    padding: 14px;
    border-top: 1px solid var(--riko-line);
    border-radius: 0 0 8px 8px;
    background: linear-gradient(180deg, var(--riko-surface) 0%, var(--riko-surface-soft) 100%);
}

#tm-bottom-b .riko-random-card {
    overflow: hidden;
    border-color: var(--riko-line) !important;
    background: var(--riko-surface) !important;
    box-shadow: 0 8px 22px color-mix(in srgb, var(--riko-brand-deep) 8%, transparent) !important;
    transition: border-color .18s ease, box-shadow .18s ease, transform .18s ease;
}

#tm-bottom-b .riko-random-card:hover,
#tm-bottom-b .riko-random-card:focus-within {
    border-color: var(--riko-focus-on-brand) !important;
    box-shadow: 0 16px 34px color-mix(in srgb, var(--riko-brand-deep) 14%, transparent) !important;
    transform: translateY(-2px);
}

#tm-bottom-b .riko-random-media {
    position: relative;
    border-bottom: 1px solid var(--riko-line);
}

#tm-bottom-b .riko-random-media:after {
    position: absolute;
    inset: auto 0 0 0;
    height: 38%;
    background: linear-gradient(180deg, color-mix(in srgb, var(--riko-brand-deep) 0%, transparent) 0%, color-mix(in srgb, var(--riko-brand-deep) 18%, transparent) 100%);
    content: "";
    pointer-events: none;
}

#tm-bottom-b .riko-random-media img {
    filter: saturate(1.03) contrast(1.02);
    transition: transform .22s ease, filter .22s ease;
}

#tm-bottom-b .riko-random-card:hover .riko-random-media img,
#tm-bottom-b .riko-random-card:focus-within .riko-random-media img {
    filter: saturate(1.06) contrast(1.04);
    transform: scale(1.035);
}

#tm-bottom-b .riko-random-body {
    display: flex;
    min-height: 112px;
    flex-direction: column;
    gap: 12px;
    padding: 15px 16px 14px !important;
}

#tm-bottom-b .riko-random-title,
#tm-bottom-b .riko-random-title h3,
#tm-bottom-b .riko-random-title b {
    display: -webkit-box !important;
    overflow: hidden;
    font-size: 18px !important;
    font-weight: 900 !important;
    line-height: 1.22 !important;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 2;
}

#tm-bottom-b .riko-random-meta {
    margin: auto 0 0 !important;
    padding: 10px 12px;
    border: 1px solid var(--riko-line);
    border-radius: 8px;
    background: var(--riko-surface);
    color: var(--riko-muted);
}

#tm-bottom-b .riko-random-meta > .uk-width-1-1 {
    display: grid;
    min-width: 0;
    grid-template-columns: minmax(0, 1fr);
    gap: 6px;
}

#tm-bottom-b .riko-random-meta .uk-align-right {
    display: block;
    order: 2;
    width: 100%;
    overflow: hidden;
    margin: 0 !important;
    color: var(--riko-muted) !important;
    font-size: 12.5px;
    font-weight: 850;
    line-height: 1.25;
    text-align: left;
    text-overflow: ellipsis;
    white-space: nowrap;
}

#tm-bottom-b .riko-random-meta .uk-text-truncate {
    order: 1;
    width: 100%;
}

#tm-bottom-b .riko-random-meta p {
    margin: 0 !important;
    color: var(--riko-muted) !important;
    font-size: 12.5px !important;
    font-weight: 800;
}

#tm-bottom-b .riko-random-meta i {
    color: var(--riko-action) !important;
}

#tm-bottom-b .totalmembers {
    border-color: var(--riko-line) !important;
    background: linear-gradient(180deg, var(--riko-surface) 0%, var(--riko-surface) 100%) !important;
    box-shadow: 0 18px 42px color-mix(in srgb, var(--riko-brand-deep) 10%, transparent) !important;
}

#tm-bottom-b .riko-about-card {
    padding: 32px 32px 28px;
}

#tm-bottom-b .riko-about-card blockquote,
#tm-bottom-b .riko-about-card .riko-about-quote {
    border-left-color: var(--riko-line);
}

@media (max-width: 960px) {
    #tm-bottom-b .riko-random-card:hover,
    #tm-bottom-b .riko-random-card:focus-within {
        transform: none;
    }
}

@media (max-width: 640px) {
    #tm-top-b .uk-panel.uk-panel-box.uk-panel-box-secondary + .riko-ajax-carousel {
        padding: 8px;
    }

    #tm-top-b .riko-ajax-carousel .uk-list.uk-list-striped > li:first-child,
    #tm-bottom-b .riko-random-meta {
        padding: 9px 10px !important;
    }

    #tm-bottom-b .riko-random-grid {
        grid-template-columns: 1fr;
        gap: 12px;
        padding: 10px;
    }

    #tm-bottom-b .riko-random-body {
        min-height: 0;
    }
}

#tm-bottom-b .totalmembers {
    overflow: hidden;
}

#tm-bottom-b .riko-about-card.riko-copy-card {
    position: relative;
    overflow: hidden;
    min-height: 100%;
    border: 1px solid var(--riko-line);
    background:
        linear-gradient(180deg, var(--riko-surface) 0%, var(--riko-surface) 100%) !important;
}

#tm-bottom-b .riko-about-card.riko-copy-card:before {
    position: absolute;
    top: 26px;
    bottom: 26px;
    left: 0;
    width: 4px;
    border-radius: 0 999px 999px 0;
    background: var(--riko-action);
    content: "";
}

#tm-bottom-b .riko-about-card.riko-copy-card .riko-eyebrow {
    display: inline-flex;
    align-items: center;
    min-height: 26px;
    padding: 0 10px;
    border: 1px solid var(--riko-line);
    border-radius: 999px;
    background: var(--riko-surface-soft);
    color: var(--riko-action) !important;
    font-size: 12px !important;
    letter-spacing: .08em !important;
}

#tm-bottom-b .riko-about-card.riko-copy-card h2 {
    color: var(--riko-ink) !important;
    font-weight: 900 !important;
    line-height: 1.08 !important;
    text-wrap: balance;
}

#tm-bottom-b .riko-about-card.riko-copy-card .riko-about-lead {
    color: var(--riko-ink) !important;
    font-weight: 760 !important;
}

#tm-bottom-b .riko-about-card.riko-copy-card .riko-member-count {
    color: var(--riko-action) !important;
    font-weight: 950;
}

#tm-bottom-b .riko-about-card.riko-copy-card .riko-about-points {
    display: grid;
    margin-top: 0;
}

#tm-bottom-b .riko-about-card.riko-copy-card .riko-about-points p {
    position: relative;
    margin: 0;
    border: 1px solid var(--riko-line);
    border-left: 0;
    background: color-mix(in srgb, var(--riko-inverse) 72%, transparent);
    color: var(--riko-muted) !important;
    font-weight: 650 !important;
}

#tm-bottom-b .riko-about-card.riko-copy-card .riko-about-points p:before {
    position: absolute;
    top: 16px;
    left: 14px;
    border: 3px solid var(--riko-line);
    border-radius: 999px;
    background: var(--riko-brand-end);
    content: "";
    box-sizing: border-box;
}

#tm-bottom-b .riko-about-card.riko-copy-card .riko-about-points strong {
    color: var(--riko-ink);
    font-weight: 700;
}

@media (max-width: 960px) {
    #tm-bottom-b .riko-about-card.riko-copy-card {
        padding: 30px 28px 26px;
    }
}

/* Rikoooo about module compact editorial v60 - Codex 2026-06-22 */
#tm-bottom-b .riko-about-card.riko-copy-card {
    display: flex;
    flex-direction: column;
    justify-content: center;
    padding: 30px 32px 28px;
}

#tm-bottom-b .riko-about-card.riko-copy-card .riko-eyebrow {
    margin-bottom: 10px;
}

#tm-bottom-b .riko-about-card.riko-copy-card h2 {
    max-width: 10em;
    margin-bottom: 14px;
    font-size: 32px !important;
}

#tm-bottom-b .riko-about-card.riko-copy-card .riko-about-lead {
    margin-bottom: 18px;
    font-size: 16px !important;
    line-height: 1.48 !important;
}

#tm-bottom-b .riko-about-card.riko-copy-card .riko-about-points {
    gap: 10px;
}

#tm-bottom-b .riko-about-card.riko-copy-card .riko-about-points p {
    min-height: 0;
    padding: 0 0 0 20px;
    border: 0;
    border-left: 2px solid var(--riko-line);
    border-radius: 0;
    background: transparent;
    font-size: 14.5px !important;
    line-height: 1.42 !important;
}

#tm-bottom-b .riko-about-card.riko-copy-card .riko-about-points p:before {
    top: .42em;
    left: -6px;
    width: 10px;
    height: 10px;
    border: 2px solid var(--riko-surface);
    box-shadow: 0 0 0 2px var(--riko-action);
}

@media (max-width: 640px) {
    #tm-bottom-b .riko-about-card.riko-copy-card {
        padding: 26px 22px 24px;
    }

    #tm-bottom-b .riko-about-card.riko-copy-card h2 {
        max-width: 8.5em;
        font-size: 29px !important;
    }

    #tm-bottom-b .riko-about-card.riko-copy-card .riko-about-lead {
        font-size: 15.5px !important;
    }

    #tm-bottom-b .riko-about-card.riko-copy-card .riko-about-points p {
        padding: 0 0 0 18px;
        font-size: 14.25px !important;
    }
}


/* Rikoooo homepage carousel engine v77 - Codex 2026-06-23 */
#tm-top-b .riko-home-carousel-v2 {
    --riko-carousel-visible: 4;
    position: relative;
    max-width: 100%;
    overflow: visible !important;
}

#tm-top-b .riko-home-carousel-v2 .riko-module-content {
    position: relative;
    overflow: visible !important;
    cursor: auto;
    transform: none !important;
    transition: none !important;
    will-change: auto;
}

#tm-top-b .riko-home-carousel-v2 .riko-home-carousel-viewport,
#tm-top-b .riko-home-carousel-v2 .uk-slider-container {
    position: relative;
    width: 100%;
    max-width: 100%;
    overflow: hidden !important;
    border-radius: 8px;
    overscroll-behavior-x: contain;
    touch-action: pan-y;
    transition: height .22s ease, min-height .22s ease;
    -webkit-overflow-scrolling: touch;
}

#tm-top-b .riko-home-carousel-v2 .riko-home-carousel-track,
#tm-top-b .riko-home-carousel-v2 ul.uk-slider {
    display: flex !important;
    width: auto !important;
    min-width: 100%;
    max-width: none !important;
    flex-wrap: nowrap !important;
    align-items: stretch !important;
    gap: 0 !important;
    margin: 0 !important;
    padding: 0 !important;
    cursor: grab;
    list-style: none !important;
    transform: translate3d(0,0,0);
    transition: transform .34s cubic-bezier(.22,.61,.36,1);
    backface-visibility: hidden;
    will-change: transform;
}

#tm-top-b .riko-home-carousel-v2.riko-home-carousel-dragging .riko-home-carousel-track,
#tm-top-b .riko-home-carousel-v2.riko-home-carousel-dragging ul.uk-slider {
    cursor: grabbing;
    transition-duration: 0ms !important;
    user-select: none;
}

#tm-top-b .riko-home-carousel-v2.riko-home-carousel-entering .riko-home-carousel-track {
    pointer-events: none;
}

#tm-top-b .riko-home-carousel-v2 .riko-home-carousel-slide,
#tm-top-b .riko-home-carousel-v2 ul.uk-slider > li {
    position: relative !important;
    top: auto !important;
    left: auto !important;
    display: flex !important;
    width: auto !important;
    min-width: 0 !important;
    max-width: calc(100% / var(--riko-carousel-visible, 4)) !important;
    flex: 0 0 calc(100% / var(--riko-carousel-visible, 4)) !important;
    align-items: stretch !important;
    box-sizing: border-box;
    padding: 0 6px !important;
    float: none !important;
}

#tm-top-b .riko-home-carousel-v2 ul.uk-slider > li > div,
#tm-top-b .riko-home-carousel-v2 .uk-panel-box-primary {
    width: 100%;
}

#tm-top-b .riko-home-carousel-v2 .uk-slidenav,
#tm-top-b .riko-home-carousel-v2 [data-riko-original-uk-slider] .uk-slidenav {
    display: none !important;
}

#tm-top-b .riko-home-carousel-v2 .riko-module-arrow {
    top: 50%;
    z-index: 35;
    width: 46px;
    height: 46px;
    border: 1px solid color-mix(in srgb, var(--riko-surface) 82%, transparent) !important;
    border-radius: 999px;
    background: color-mix(in srgb, var(--riko-brand) 94%, transparent);
    box-shadow: 0 16px 34px color-mix(in srgb, var(--riko-brand-deep) 28%, transparent) !important;
    color: var(--riko-on-brand) !important;
    font-size: 30px;
    line-height: 1;
    opacity: 0;
    transform: translateY(-50%);
    transition: opacity .16s ease, background .16s ease, transform .16s ease;
}

#tm-top-b .riko-home-carousel-v2:hover .riko-module-arrow,
#tm-top-b .riko-home-carousel-v2:focus-within .riko-module-arrow {
    opacity: .96;
}

#tm-top-b .riko-home-carousel-v2 .riko-module-arrow:hover,
#tm-top-b .riko-home-carousel-v2 .riko-module-arrow:focus {
    background: color-mix(in srgb, var(--riko-action-hover) 98%, transparent);
    transform: translateY(-50%) scale(1.04);
}

#tm-top-b .riko-home-carousel-v2 .riko-module-arrow[disabled] {
    opacity: 0 !important;
    pointer-events: none;
}

#tm-top-b .riko-home-carousel-v2 .riko-module-arrow-prev {
    left: 13px;
}

#tm-top-b .riko-home-carousel-v2 .riko-module-arrow-next {
    right: 13px;
}

@media (max-width: 1220px) {
    #tm-top-b .riko-home-carousel-v2 {
        --riko-carousel-visible: 3;
    }
}

@media (max-width: 900px) {
    #tm-top-b .riko-home-carousel-v2 {
        --riko-carousel-visible: 2;
    }
}

@media (hover: none), (max-width: 760px) {
    #tm-top-b .riko-home-carousel-v2 .riko-module-arrow {
        opacity: .96;
    }
}

@media (max-width: 620px) {
    #tm-top-b .riko-home-carousel-v2 {
        --riko-carousel-visible: 1;
    }

    #tm-top-b .uk-panel.uk-panel-box.uk-panel-box-secondary + .riko-home-carousel-v2 {
        padding: 10px 8px 14px !important;
    }

    #tm-top-b .riko-home-carousel-v2 .riko-home-carousel-slide,
    #tm-top-b .riko-home-carousel-v2 ul.uk-slider > li {
        padding: 0 !important;
    }

    #tm-top-b .riko-home-carousel-v2 .riko-module-arrow {
        width: 42px;
        height: 48px;
        font-size: 29px;
    }

    #tm-top-b .riko-home-carousel-v2 .riko-module-arrow-prev {
        left: 8px;
    }

    #tm-top-b .riko-home-carousel-v2 .riko-module-arrow-next {
        right: 8px;
    }
}

@media (prefers-reduced-motion: reduce) {
    #tm-top-b .riko-home-carousel-v2 .riko-home-carousel-track,
    #tm-top-b .riko-home-carousel-v2 ul.uk-slider,
    #tm-top-b .riko-home-carousel-v2 .riko-home-carousel-viewport {
        transition: none !important;
    }
}


/* Rikoooo homepage premium hero - single featured add-on.
   Scope: homepage featured module only. Header and footer intentionally untouched. */
#tm-hero .riko-home-premium-hero,
#tm-hero .riko-home-premium-hero * {
    box-sizing: border-box;
}

#tm-hero .riko-home-premium-hero {
    position: relative;
    overflow: hidden;
    width: 100%;
    max-width: none;
    margin: 0 0 22px;
    padding: clamp(20px, 2.4vw, 34px);
    border: 1px solid color-mix(in srgb, var(--riko-line) 62%, transparent);
    border-radius: 34px;
    background:
        radial-gradient(circle at 82% 18%, color-mix(in srgb, var(--riko-brand-end) 34%, transparent), transparent 32%),
        linear-gradient(135deg, var(--riko-brand-deep) 0%, var(--riko-brand) 54%, var(--riko-brand-end) 100%);
    box-shadow: inset 0 1px 0 color-mix(in srgb, var(--riko-inverse) 16%, transparent);
    color: var(--riko-on-brand);
}

#tm-hero .riko-home-premium-hero::before,
#tm-hero .riko-home-premium-hero::after {
    content: "";
    position: absolute;
    pointer-events: none;
    opacity: 0.48;
}

#tm-hero .riko-home-premium-hero::before {
    inset: 0;
    background:
        linear-gradient(90deg, color-mix(in srgb, var(--riko-inverse) 11%, transparent) 1px, transparent 1px),
        linear-gradient(180deg, color-mix(in srgb, var(--riko-inverse) 8%, transparent) 1px, transparent 1px);
    background-size: 118px 118px;
    mask-image: linear-gradient(90deg, transparent, #000 20%, #000 76%, transparent);
}

#tm-hero .riko-home-premium-hero::after {
    right: -90px;
    top: -90px;
    width: 310px;
    height: 310px;
    border: 1px solid color-mix(in srgb, var(--riko-inverse) 30%, transparent);
    border-radius: 50%;
    box-shadow: inset 0 0 0 54px color-mix(in srgb, var(--riko-inverse) 5%, transparent);
}

#tm-hero .riko-home-premium-hero__inner {
    position: relative;
    z-index: 1;
    display: grid;
    grid-template-columns: minmax(0, 1fr) minmax(400px, 0.96fr);
    align-items: center;
    gap: clamp(24px, 3vw, 44px);
}

#tm-hero .riko-home-premium-eyebrow {
    display: inline-flex;
    align-items: center;
    width: max-content;
    margin-bottom: 16px;
    padding: 8px 14px;
    border: 1px solid color-mix(in srgb, var(--riko-inverse) 34%, transparent);
    border-radius: 999px;
    background: color-mix(in srgb, var(--riko-inverse) 12%, transparent);
    color: var(--riko-on-brand-muted);
    font-size: 0.78rem;
    font-weight: 700;
    letter-spacing: 0.08em;
    text-transform: uppercase;
}

#tm-hero .riko-home-premium-hero h1 {
    max-width: 820px;
    margin: 0;
    color: var(--riko-on-brand);
    font-size: clamp(2.15rem, 3.35vw, 3.9rem);
    line-height: 1.01;
    letter-spacing: -0.05em;
}

#tm-hero .riko-home-premium-lead {
    max-width: 760px;
    margin: 18px 0 0;
    color: color-mix(in srgb, var(--riko-on-brand-muted) 90%, transparent);
    font-size: clamp(0.98rem, 1.04vw, 1.1rem);
    line-height: 1.55;
    font-weight: 400;
}

#tm-hero .riko-home-premium-proof {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 10px;
    margin-top: 22px;
}

#tm-hero .riko-home-premium-proof article {
    min-height: 96px;
    padding: 14px 15px;
    border: 1px solid color-mix(in srgb, var(--riko-inverse) 22%, transparent);
    border-radius: 20px;
    background: color-mix(in srgb, var(--riko-inverse) 10%, transparent);
    box-shadow: inset 0 1px 0 color-mix(in srgb, var(--riko-inverse) 16%, transparent);
}

#tm-hero .riko-home-premium-proof strong,
#tm-hero .riko-home-premium-proof em,
#tm-hero .riko-home-premium-proof span {
    display: block;
}

#tm-hero .riko-home-premium-proof strong {
    color: var(--riko-on-brand);
    font-size: clamp(1.12rem, 1.32vw, 1.56rem);
    line-height: 0.95;
    letter-spacing: -0.045em;
    white-space: nowrap;
}

#tm-hero .riko-home-premium-proof em {
    margin-top: 8px;
    color: var(--riko-on-brand-muted);
    font-size: 0.72rem;
    font-style: normal;
    font-weight: 700;
    letter-spacing: 0.06em;
    line-height: 1.15;
    text-transform: uppercase;
}

#tm-hero .riko-home-premium-proof span {
    margin-top: 8px;
    color: color-mix(in srgb, var(--riko-on-brand-muted) 78%, transparent);
    font-size: 0.78rem;
    line-height: 1.38;
    font-weight: 650;
}

#tm-hero .riko-home-premium-actions {
    display: flex;
    flex-wrap: wrap;
    gap: 12px;
    margin-top: 22px;
}

#tm-hero .riko-home-premium-btn {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 44px;
    padding: 0 20px;
    border-radius: 999px;
    font-size: 0.94rem;
    font-weight: 700;
    text-decoration: none;
    transition: transform 0.2s ease, box-shadow 0.2s ease, background 0.2s ease;
}

#tm-hero .riko-home-premium-btn:hover,
#tm-hero .riko-home-premium-feature__link:hover {
    transform: translateY(-2px);
    text-decoration: none;
}

#tm-hero .riko-home-premium-btn-primary {
    background: var(--riko-action);
    color: var(--riko-action-contrast);
    box-shadow: 0 18px 38px color-mix(in srgb, var(--riko-action) 22%, transparent);
}

#tm-hero .riko-home-premium-btn-secondary {
    border: 1px solid color-mix(in srgb, var(--riko-inverse) 35%, transparent);
    background: color-mix(in srgb, var(--riko-inverse) 10%, transparent);
    color: var(--riko-on-brand);
}

#tm-hero .riko-home-premium-feature {
    overflow: hidden;
    border: 1px solid color-mix(in srgb, var(--riko-line) 82%, transparent);
    border-radius: 30px;
    background: color-mix(in srgb, var(--riko-surface-soft) 96%, transparent);
    box-shadow: 0 26px 65px color-mix(in srgb, var(--riko-brand-deep) 22%, transparent);
    color: var(--riko-ink);
}

#tm-hero .riko-home-premium-feature__image {
    position: relative;
    display: block;
    min-height: clamp(230px, 21vw, 315px);
    background:
        linear-gradient(135deg, var(--riko-surface-soft), var(--riko-surface));
    background-position: center;
    background-size: cover;
    text-decoration: none;
}

#tm-hero .riko-home-premium-feature__image span {
    position: absolute;
    left: 20px;
    top: 20px;
    padding: 8px 13px;
    border-radius: 999px;
    background: color-mix(in srgb, var(--riko-surface) 92%, transparent);
    color: var(--riko-ink);
    font-size: 0.75rem;
    font-weight: 700;
    letter-spacing: 0.08em;
    text-transform: uppercase;
    box-shadow: 0 12px 28px color-mix(in srgb, var(--riko-brand-deep) 12%, transparent);
}

#tm-hero .riko-home-premium-feature__body {
    padding: clamp(18px, 1.8vw, 24px);
}

#tm-hero .riko-home-premium-feature__meta {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
    margin-bottom: 13px;
}

#tm-hero .riko-home-premium-feature__meta span {
    display: inline-flex;
    align-items: center;
    min-height: 28px;
    padding: 0 11px;
    border-radius: 999px;
    background: var(--riko-surface-soft);
    color: var(--riko-ink);
    font-size: 0.72rem;
    font-weight: 700;
}

#tm-hero .riko-home-premium-feature h2 {
    margin: 0;
    color: var(--riko-ink);
    font-size: clamp(1.35rem, 1.78vw, 2.02rem);
    line-height: 1.06;
    letter-spacing: -0.035em;
}

#tm-hero .riko-home-premium-feature h2 a {
    color: inherit;
    text-decoration: none;
}

#tm-hero .riko-home-premium-feature p {
    margin: 12px 0 0;
    color: var(--riko-muted);
    font-size: 0.92rem;
    line-height: 1.44;
    font-weight: 700;
}

#tm-hero .riko-home-premium-feature__description {
    display: -webkit-box;
    overflow: hidden;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 2;
    max-width: 92%;
    color: var(--riko-ink) !important;
    font-size: 0.94rem !important;
    line-height: 1.44 !important;
    font-weight: 750 !important;
}

#tm-hero .riko-home-premium-feature__note {
    color: var(--riko-muted) !important;
    font-size: 0.88rem !important;
    line-height: 1.42 !important;
    font-weight: 800 !important;
}

#tm-hero .riko-home-premium-feature__link {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 42px;
    margin-top: 16px;
    padding: 0 20px;
    border-radius: 999px;
    background: var(--riko-brand-end);
    color: var(--riko-on-brand);
    font-size: 0.94rem;
    font-weight: 700;
    text-decoration: none;
    box-shadow: 0 16px 34px color-mix(in srgb, var(--riko-brand-deep) 20%, transparent);
    transition: transform 0.2s ease, box-shadow 0.2s ease;
}

#tm-hero .riko-home-premium-extra {
    width: min(100%, 1480px);
    margin: 0 auto 18px;
}

@media (max-width: 1100px) {
    #tm-hero .riko-home-premium-hero__inner {
        grid-template-columns: 1fr;
    }

    #tm-hero .riko-home-premium-proof {
        grid-template-columns: repeat(3, minmax(0, 1fr));
    }
}

@media (max-width: 760px) {
    #tm-hero .riko-home-premium-hero {
        border-radius: 24px;
        margin-bottom: 16px;
        padding: 14px;
    }

    #tm-hero .riko-home-premium-hero__inner {
        gap: 16px;
    }

    #tm-hero .riko-home-premium-hero h1 {
        font-size: clamp(1.5rem, 7.6vw, 2.05rem);
        line-height: 1.04;
        letter-spacing: -0.045em;
    }

    #tm-hero .riko-home-premium-eyebrow {
        margin-bottom: 11px;
        padding: 6px 10px;
        font-size: 0.6rem;
    }

    #tm-hero .riko-home-premium-lead {
        margin-top: 12px;
        font-size: 0.84rem;
        line-height: 1.44;
    }

    #tm-hero .riko-home-premium-proof {
        grid-template-columns: repeat(3, minmax(0, 1fr));
        gap: 7px;
        margin-top: 15px;
    }

    #tm-hero .riko-home-premium-proof article {
        min-height: auto;
        padding: 9px 7px;
        border-radius: 16px;
    }

    #tm-hero .riko-home-premium-proof strong {
        font-size: clamp(0.86rem, 3.9vw, 1.08rem);
        letter-spacing: -0.04em;
    }

    #tm-hero .riko-home-premium-proof em {
        margin-top: 5px;
        font-size: 0.52rem;
        line-height: 1.1;
    }

    #tm-hero .riko-home-premium-proof span {
        display: none;
    }

    #tm-hero .riko-home-premium-actions {
        gap: 8px;
        margin-top: 14px;
    }

    #tm-hero .riko-home-premium-actions,
    #tm-hero .riko-home-premium-btn,
    #tm-hero .riko-home-premium-feature__link {
        width: 100%;
    }

    #tm-hero .riko-home-premium-btn,
    #tm-hero .riko-home-premium-feature__link {
        min-height: 40px;
        font-size: 0.86rem;
    }

    #tm-hero .riko-home-premium-feature {
        border-radius: 24px;
    }

    #tm-hero .riko-home-premium-feature__image {
        min-height: 152px;
    }

    #tm-hero .riko-home-premium-feature__body {
        padding: 14px;
    }

    #tm-hero .riko-home-premium-feature__meta {
        gap: 6px;
        margin-bottom: 12px;
    }

    #tm-hero .riko-home-premium-feature__meta span {
        min-height: 24px;
        padding: 0 9px;
        font-size: 0.66rem;
    }

    #tm-hero .riko-home-premium-feature h2 {
        font-size: clamp(1.12rem, 6.4vw, 1.42rem);
        line-height: 1.08;
    }

    #tm-hero .riko-home-premium-feature p {
        margin-top: 9px;
        font-size: 0.84rem;
        line-height: 1.38;
    }

    #tm-hero .riko-home-premium-feature__description {
        max-width: 100%;
        -webkit-line-clamp: 2;
        font-size: 0.84rem !important;
    }
}

/* Rikoooo homepage middle premium pass - Codex 2026-07-07
   Scope: homepage body between hero and footer only. Header, hero and footer untouched. */
#tm-top-b .uk-panel.uk-panel-box:has(.riko-home-premium) {
    padding: 16px !important;
    border: 1px solid color-mix(in srgb, var(--riko-line) 82%, transparent) !important;
    border-radius: 28px !important;
    background: linear-gradient(180deg, color-mix(in srgb, var(--riko-surface) 96%, transparent), color-mix(in srgb, var(--riko-surface-soft) 92%, transparent)) !important;
    box-shadow: 0 10px 26px color-mix(in srgb, var(--riko-brand-deep) 8%, transparent) !important;
    contain: layout paint;
}

#tm-top-b .riko-home-premium {
    --rhp-ink: var(--riko-ink);
    --rhp-muted: var(--riko-muted);
    --rhp-line: var(--riko-line);
    --rhp-night: var(--riko-brand-deep);
    --rhp-blue: var(--riko-action);
    --rhp-green: var(--riko-action);
    display: grid;
    gap: 18px;
    color: var(--rhp-ink);
    contain: layout paint;
}

#tm-top-b .riko-home-premium .rhp-section {
    position: relative;
    overflow: hidden;
    border: 1px solid var(--rhp-line);
    border-radius: 22px;
    background: color-mix(in srgb, var(--riko-surface) 78%, transparent);
    box-shadow: 0 7px 18px color-mix(in srgb, var(--riko-brand-deep) 6%, transparent);
    contain: layout paint;
}

#tm-top-b .riko-home-premium .rhp-section::before {
    content: none;
    position: absolute;
    inset: 0;
    pointer-events: none;
    background:
        linear-gradient(115deg, color-mix(in srgb, var(--riko-surface) 0%, transparent) 0%, color-mix(in srgb, var(--riko-surface) 46%, transparent) 48%, color-mix(in srgb, var(--riko-surface) 0%, transparent) 78%),
        repeating-linear-gradient(90deg, color-mix(in srgb, var(--riko-brand-end) 3.5%, transparent) 0 1px, transparent 1px 118px);
    opacity: 0;
}




#tm-top-b .rhp-library__head,
#tm-top-b .rhp-library__grid{
    position: relative;
    z-index: 1;
}











#tm-top-b .rhp-library {
    padding: 28px 26px;
    background: linear-gradient(180deg, color-mix(in srgb, var(--riko-surface) 94%, transparent), color-mix(in srgb, var(--riko-surface-soft) 90%, transparent));
}

#tm-top-b .rhp-library__head {
    margin-bottom: 22px;
}

#tm-top-b .rhp-library__head > div:first-child {
    display: grid;
    gap: 6px;
}

#tm-top-b .rhp-library__head h2 {
    margin: 0;
    color: var(--rhp-ink);
    font-size: clamp(31px, 3vw, 44px);
    letter-spacing: -0.045em;
    line-height: 0.98;
}

#tm-top-b .rhp-library__head .rhp-kicker,
#tm-top-b .rhp-about .rhp-kicker {
    display: inline-flex;
    align-items: center;
    gap: 7px;
    color: var(--riko-action);
    font-size: 12px;
    font-weight: 700;
    letter-spacing: 0.05em;
    text-transform: uppercase;
}

#tm-top-b .rhp-library__head .rhp-kicker::before,
#tm-top-b .rhp-about .rhp-kicker::before {
    content: "";
    width: 9px;
    height: 9px;
    border-radius: 999px;
    background: var(--rhp-green);
    box-shadow: 0 0 0 4px color-mix(in srgb, var(--riko-action) 14%, transparent);
}

#tm-top-b .rhp-library__tabs {
    padding: 5px;
    border: 1px solid color-mix(in srgb, var(--riko-line) 95%, transparent);
    border-radius: 999px;
    background: color-mix(in srgb, var(--riko-action-soft) 82%, transparent);
    box-shadow: inset 0 1px 0 color-mix(in srgb, var(--riko-inverse) 75%, transparent);
}

#tm-top-b .rhp-library__tabs button,
#tm-top-b .rhp-library__tabs a {
    border-radius: 999px !important;
    transition: transform 0.18s ease, background 0.18s ease, color 0.18s ease;
}

#tm-top-b .rhp-library__tabs button:hover,
#tm-top-b .rhp-library__tabs a:hover {
    transform: translateY(-1px);
}

#tm-top-b .rhp-library__grid {
    gap: 22px;
}

#tm-top-b .rhp-lead-addon,
#tm-top-b .rhp-addon-panel {
    border: 1px solid color-mix(in srgb, var(--riko-line) 96%, transparent);
    border-radius: 18px;
    background: color-mix(in srgb, var(--riko-surface) 92%, transparent);
    box-shadow: 0 8px 18px color-mix(in srgb, var(--riko-brand-deep) 6%, transparent);
    contain: layout paint;
}

#tm-top-b .rhp-lead-addon {
    overflow: hidden;
}

#tm-top-b .rhp-lead-addon__image {
    min-height: 390px;
    background-color: var(--riko-brand);
}

#tm-top-b .rhp-lead-addon__body {
    padding: 24px 24px 28px;
}

#tm-top-b .rhp-lead-addon__body h3 {
    max-width: 780px;
    margin-top: 12px;
    color: var(--rhp-ink);
    font-size: clamp(26px, 2.25vw, 36px);
    letter-spacing: -0.04em;
    line-height: 1.02;
}

#tm-top-b .rhp-lead-addon__body p {
    max-width: 760px;
    color: var(--riko-action);
    line-height: 1.55;
}

#tm-top-b .rhp-lead-addon__body a:last-child {
    color: var(--rhp-ink);
    font-weight: 700;
}

#tm-top-b .rhp-addon-panel {
    padding: 10px;
}

#tm-top-b .rhp-addon-row {
    min-height: 102px;
    border: 1px solid color-mix(in srgb, var(--riko-line) 88%, transparent);
    border-radius: 15px;
    background: linear-gradient(90deg, color-mix(in srgb, var(--riko-surface) 96%, transparent), color-mix(in srgb, var(--riko-surface) 86%, transparent));
    contain: layout paint;
    transition: transform 0.16s ease, border-color 0.16s ease, box-shadow 0.16s ease, background 0.16s ease;
}

#tm-top-b .rhp-addon-row:hover,
#tm-top-b .rhp-addon-row:focus-within {
    transform: translateX(3px);
    border-color: color-mix(in srgb, var(--riko-focus) 55%, transparent);
    background: var(--riko-surface);
    box-shadow: 0 8px 18px color-mix(in srgb, var(--riko-brand-deep) 7%, transparent);
}

#tm-top-b .rhp-addon-row img {
    border-radius: 10px;
}

#tm-top-b .rhp-addon-row__text strong {
    color: var(--rhp-ink);
    letter-spacing: -0.01em;
}

#tm-top-b .rhp-about-band {
    display: grid;
    grid-template-columns: minmax(0, 1fr) 390px;
    gap: 20px;
    padding: 0;
    border: 0;
    background: transparent;
    box-shadow: none;
}

#tm-top-b .rhp-about,
#tm-top-b .rhp-partners,
#tm-top-b .rhp-about-band > * {
    position: relative;
    overflow: hidden;
    border: 1px solid color-mix(in srgb, var(--riko-line) 96%, transparent);
    border-radius: 22px;
    background: color-mix(in srgb, var(--riko-surface) 88%, transparent);
    box-shadow: 0 8px 18px color-mix(in srgb, var(--riko-brand-deep) 6%, transparent);
    contain: layout paint;
}

#tm-top-b .rhp-about {
    padding: 36px 34px;
}

#tm-top-b .rhp-about h2 {
    margin: 8px 0 12px;
    color: var(--rhp-ink);
    font-size: clamp(30px, 3vw, 44px);
    letter-spacing: -0.045em;
    line-height: 1;
}

#tm-top-b .rhp-about__lead {
    max-width: 840px;
    color: var(--riko-action);
    font-size: 17px;
    line-height: 1.62;
}

#tm-top-b .rhp-about__points {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 12px;
    margin-top: 24px;
}

#tm-top-b .rhp-about__points > * {
    min-height: 86px;
    padding: 16px;
    border: 1px solid color-mix(in srgb, var(--riko-line) 82%, transparent);
    border-radius: 17px;
    background: linear-gradient(180deg, color-mix(in srgb, var(--riko-surface-soft) 95%, transparent), color-mix(in srgb, var(--riko-inverse) 72%, transparent));
    contain: layout paint;
}

/* Homepage partners card - keep this block calm and legible. */
#tm-top-b .rhp-partners {
    padding: 28px;
    border: 1px solid color-mix(in srgb, var(--riko-line) 96%, transparent);
    border-radius: 22px;
    background: color-mix(in srgb, var(--riko-surface) 88%, transparent) !important;
    color: var(--rhp-ink) !important;
}

#tm-top-b .rhp-partners h2,
#tm-top-b .rhp-partners h3,
#tm-top-b .rhp-partners strong {
    color: var(--rhp-ink) !important;
}

#tm-top-b .rhp-partners a {
    color: var(--rhp-ink) !important;
}

@media (max-width: 980px) {
    #tm-top-b .uk-panel.uk-panel-box:has(.riko-home-premium) {
        padding: 10px !important;
        border-radius: 22px !important;
    }

    #tm-top-b .riko-home-premium {
        gap: 12px;
    }

    

    

    

    #tm-top-b .rhp-library {
        padding: 20px 16px;
    }

    #tm-top-b .rhp-library__grid,
    #tm-top-b .rhp-about-band,
    #tm-top-b .rhp-about__points {
        grid-template-columns: 1fr;
    }

    #tm-top-b .rhp-lead-addon__image {
        min-height: 230px;
    }

    #tm-top-b .rhp-lead-addon__body,
    #tm-top-b .rhp-about,
    #tm-top-b .rhp-partners {
        padding: 20px;
    }

    #tm-top-b .rhp-addon-row {
        min-height: 86px;
    }
}

/* Homepage middle mobile proportion pass - keep the premium layer readable on phones. */
@media (max-width: 700px) {
    #tm-top-b .uk-panel.uk-panel-box:has(.riko-home-premium) {
        padding: 7px !important;
        border-radius: 20px !important;
    }

    #tm-top-b .riko-home-premium {
        gap: 10px !important;
        width: 100% !important;
    }

    #tm-top-b .riko-home-premium .rhp-section {
        border-radius: 18px !important;
    }

    

    

    

    

    

    #tm-top-b .rhp-library {
        padding: 16px 12px !important;
    }

    #tm-top-b .rhp-library__head {
        margin-bottom: 16px !important;
    }

    #tm-top-b .rhp-library__head .rhp-kicker,
    #tm-top-b .rhp-about .rhp-kicker {
        font-size: 11px !important;
    }

    #tm-top-b .rhp-library__tabs {
        width: 100% !important;
        padding: 4px !important;
        border-radius: 18px !important;
    }

    #tm-top-b .rhp-tabs {
        width: 100% !important;
        padding: 4px !important;
        border-radius: 18px !important;
    }

    #tm-top-b .rhp-tabs--desktop {
        display: none !important;
    }

    #tm-top-b .rhp-tabs--mobile {
        display: flex !important;
        width: 100% !important;
        margin: 14px 0 4px !important;
        overflow-x: auto !important;
        scrollbar-width: none;
    }

    #tm-top-b .rhp-tabs--mobile::-webkit-scrollbar {
        display: none;
    }

    #tm-top-b .rhp-library__panels {
        margin-top: 10px !important;
    }

    #tm-top-b .rhp-library__tabs button,
    #tm-top-b .rhp-library__tabs a,
    #tm-top-b .rhp-tabs button {
        padding: 8px 10px !important;
        font-size: 12px !important;
    }

    #tm-top-b .rhp-lead-addon__image {
        min-height: 198px !important;
    }

    #tm-top-b .rhp-lead-addon__body p {
        font-size: 14px !important;
        line-height: 1.5 !important;
    }

    #tm-top-b .rhp-addon-row {
        min-height: 76px !important;
        padding: 8px !important;
    }

    #tm-top-b .rhp-addon-row__text strong {
        font-size: 13.5px !important;
        line-height: 1.2 !important;
    }

    #tm-top-b .rhp-addon-row__text span,
    #tm-top-b .rhp-addon-row__text small {
        font-size: 12px !important;
        line-height: 1.25 !important;
    }

    #tm-top-b .rhp-about {
        padding: 20px 16px !important;
    }

    #tm-top-b .rhp-about__lead {
        font-size: 16px !important;
        line-height: 1.52 !important;
    }

    #tm-top-b .rhp-about__points {
        gap: 10px !important;
        margin-top: 16px !important;
    }

    #tm-top-b .rhp-about__points > * {
        min-height: 0 !important;
        padding: 14px !important;
        border-radius: 15px !important;
        font-size: 13.5px !important;
        line-height: 1.4 !important;
    }

    #tm-top-b .rhp-about__points strong,
    #tm-top-b .rhp-about__points b {
        font-size: 15px !important;
        line-height: 1.2 !important;
    }

    #tm-top-b .rhp-partners {
        padding: 18px 14px !important;
    }

    #tm-top-b .rhp-partners h2,
    #tm-top-b .rhp-partners h3 {
        font-size: 24px !important;
        line-height: 1.15 !important;
    }
}



/* Homepage proportion and hierarchy pass - Codex 2026-07-11. */
body.riko-page-home .tm-inner-container > .tm-container {
    border-radius: var(--riko-shell-radius);
}

body.riko-page-home #tm-top-b .riko-home-premium .rhp-section {
    margin-top: 0 !important;
    border-radius: 20px;
    box-shadow: 0 6px 16px color-mix(in srgb, var(--riko-brand-deep) 4.5%, transparent);
}

body.riko-page-home #tm-top-b .riko-home-premium .rhp-about-band {
    margin: 0 !important;
}

body.riko-page-home #tm-top-b .rhp-about,
body.riko-page-home #tm-top-b .rhp-discover,
body.riko-page-home #tm-top-b .rhp-partners {
    border-radius: 20px;
    box-shadow: 0 6px 16px color-mix(in srgb, var(--riko-brand-deep) 4.5%, transparent);
}

body.riko-page-home #tm-top-b .rhp-library__head {
    margin-bottom: 18px;
}

body.riko-page-home #tm-top-b .rhp-library__head h2,
body.riko-page-home #tm-top-b .rhp-about h2 {
    letter-spacing: 0;
    font-weight: 700;
}

body.riko-page-home #tm-top-b .rhp-about-band {
    grid-template-columns: minmax(0, 1fr) 360px;
    gap: 18px;
}

body.riko-page-home #tm-top-b .rhp-discover__image,
body.riko-page-home #tm-top-b .rhp-discover__image img {
    width: 100%;
    height: 190px;
    min-height: 190px;
    object-fit: cover;
}

@media (min-width: 1101px) {
    body.riko-page-home #tm-hero .riko-home-premium-hero {
        margin-bottom: 20px;
        padding: 30px;
        border-radius: var(--riko-shell-radius);
    }

    body.riko-page-home #tm-hero .riko-home-premium-hero__inner {
        gap: 36px;
    }

    body.riko-page-home #tm-hero .riko-home-premium-hero h1 {
        font-size: 56px;
        letter-spacing: 0;
    }

    body.riko-page-home #tm-hero .riko-home-premium-lead {
        margin-top: 15px;
    }

    body.riko-page-home #tm-hero .riko-home-premium-proof,
    body.riko-page-home #tm-hero .riko-home-premium-actions {
        margin-top: 18px;
    }

    body.riko-page-home #tm-hero .riko-home-premium-proof article {
        min-height: 88px;
        padding: 12px 14px;
        border-radius: 16px;
    }

    body.riko-page-home #tm-hero .riko-home-premium-feature {
        border-radius: 24px;
    }

    body.riko-page-home #tm-hero .riko-home-premium-feature__image {
        min-height: 278px;
    }

    body.riko-page-home #tm-hero .riko-home-premium-feature__body {
        padding: 20px 22px;
    }

    body.riko-page-home #tm-hero .riko-home-premium-feature h2 {
        font-size: 28px;
        letter-spacing: 0;
    }
}

@media (min-width: 981px) and (max-width: 1100px) {
    body.riko-page-home #tm-hero .riko-home-premium-hero {
        padding: 24px;
        border-radius: var(--riko-shell-radius);
    }

    body.riko-page-home #tm-hero .riko-home-premium-hero__inner {
        grid-template-columns: minmax(0, 1fr) minmax(360px, 0.88fr);
        gap: 24px;
    }

    body.riko-page-home #tm-hero .riko-home-premium-hero h1 {
        font-size: 46px;
        letter-spacing: 0;
    }

    body.riko-page-home #tm-hero .riko-home-premium-feature__image {
        min-height: 250px;
    }
}

@media (max-width: 980px) {
    body.riko-page-home #tm-top-b .rhp-about-band {
        grid-template-columns: 1fr;
    }
}

@media (max-width: 700px) {
    body.riko-page-home .tm-inner-container > .tm-container,
    body.riko-page-home #tm-hero .riko-home-premium-hero,
    body.riko-page-home #tm-top-b .uk-panel.uk-panel-box:has(.riko-home-premium) {
        border-radius: var(--riko-shell-radius-mobile) !important;
    }

    body.riko-page-home #tm-top-b .uk-panel.uk-panel-box:has(.riko-home-premium) {
        padding: 7px !important;
    }

    body.riko-page-home #tm-hero .riko-home-premium-hero h1 {
        font-size: 32px !important;
        letter-spacing: 0 !important;
    }

    body.riko-page-home #tm-hero .riko-home-premium-feature h2 {
        letter-spacing: 0 !important;
    }

    body.riko-page-home #tm-top-b .rhp-library__head h2,
    body.riko-page-home #tm-top-b .rhp-about h2 {
        letter-spacing: 0 !important;
    }

    body.riko-page-home #tm-top-b .rhp-discover__image,
    body.riko-page-home #tm-top-b .rhp-discover__image img {
        height: auto;
        min-height: 0;
    }
}

@media (max-width: 380px) {
    body.riko-page-home #tm-hero .riko-home-premium-hero h1 {
        font-size: 29px !important;
    }
}

/* Homepage airline-livery motif - faded micro-points, never a full pattern fill. */
body.riko-page-home #tm-hero .riko-home-premium-hero {
    background: linear-gradient(128deg, var(--riko-brand-deep) 0%, var(--riko-brand) 57%, var(--riko-brand-end) 100%) !important;
}

body.riko-page-home #tm-hero .riko-home-premium-hero::before {
    inset: -10% -4%;
    background-image:
        radial-gradient(circle, color-mix(in srgb, var(--riko-inverse) 30%, transparent) 0 1.15px, transparent 1.5px),
        radial-gradient(circle, color-mix(in srgb, var(--riko-brand-end) 25%, transparent) 0 0.9px, transparent 1.3px);
    background-position: 0 0, 8px 8px;
    background-size: 16px 16px, 32px 32px;
    transform: rotate(-3deg);
    -webkit-mask-image: linear-gradient(116deg, transparent 14%, rgba(0, 0, 0, 0.2) 34%, #000 58%, rgba(0, 0, 0, 0.76) 78%, transparent 96%);
    mask-image: linear-gradient(116deg, transparent 14%, rgba(0, 0, 0, 0.2) 34%, #000 58%, rgba(0, 0, 0, 0.76) 78%, transparent 96%);
}

body.riko-page-home #tm-hero .riko-home-premium-hero::after {
    top: auto;
    right: -7%;
    bottom: -42%;
    border: 0;
    border-radius: 0;
    background-image: radial-gradient(circle, color-mix(in srgb, var(--riko-inverse) 25%, transparent) 0 1.25px, transparent 1.65px);
    background-size: 22px 22px;
    box-shadow: none;
    transform: rotate(-8deg);
    -webkit-mask-image: radial-gradient(ellipse at 58% 44%, #000 0, rgba(0, 0, 0, 0.82) 44%, transparent 76%);
    mask-image: radial-gradient(ellipse at 58% 44%, #000 0, rgba(0, 0, 0, 0.82) 44%, transparent 76%);
}

body.riko-page-home #tm-hero .riko-home-premium-proof article,
body.riko-page-home #tm-hero .riko-home-premium-feature__body {
    position: relative;
    isolation: isolate;
    overflow: hidden;
}

body.riko-page-home #tm-hero .riko-home-premium-proof article::after,
body.riko-page-home #tm-hero .riko-home-premium-feature__body::before {
    position: absolute;
    z-index: 0;
    top: -22px;
    right: -22px;
    width: 138px;
    height: 128px;
    background-image: radial-gradient(circle, color-mix(in srgb, var(--riko-brand-end) 22%, transparent) 0 1px, transparent 1.35px);
    background-size: 14px 14px;
    content: "";
    opacity: 0.7;
    pointer-events: none;
    -webkit-mask-image: radial-gradient(ellipse at 100% 0, #000 0, transparent 72%);
    mask-image: radial-gradient(ellipse at 100% 0, #000 0, transparent 72%);
}

body.riko-page-home #tm-hero .riko-home-premium-feature__body::before {
    width: 190px;
    height: 155px;
    background-image: radial-gradient(circle, color-mix(in srgb, var(--riko-brand-end) 13%, transparent) 0 1px, transparent 1.35px);
    background-size: 15px 15px;
}

body.riko-page-home #tm-hero .riko-home-premium-proof article > *,
body.riko-page-home #tm-hero .riko-home-premium-feature__body > * {
    position: relative;
    z-index: 1;
}

body.riko-page-home #tm-top-b .rhp-library::before,
body.riko-page-home #tm-top-b .rhp-about::before,
body.riko-page-home #tm-top-b .rhp-partners::before {
    position: absolute;
    z-index: 0;
    inset: -42px -48px auto auto !important;
    width: 310px;
    height: 230px;
    background-image:
        radial-gradient(circle, color-mix(in srgb, var(--riko-brand-end) 14%, transparent) 0 1.05px, transparent 1.4px),
        radial-gradient(circle, color-mix(in srgb, var(--riko-brand-end) 8%, transparent) 0 0.8px, transparent 1.15px) !important;
    background-position: 0 0, 8px 8px !important;
    background-size: 16px 16px, 32px 32px !important;
    content: "" !important;
    opacity: 0.66 !important;
    pointer-events: none;
    -webkit-mask-image: radial-gradient(ellipse at 100% 0, #000 0, rgba(0, 0, 0, 0.78) 38%, transparent 75%);
    mask-image: radial-gradient(ellipse at 100% 0, #000 0, rgba(0, 0, 0, 0.78) 38%, transparent 75%);
}

body.riko-page-home #tm-top-b .rhp-library > *,
body.riko-page-home #tm-top-b .rhp-about > *,
body.riko-page-home #tm-top-b .rhp-partners > * {
    position: relative;
    z-index: 1;
}

@media (max-width: 700px) {
    body.riko-page-home #tm-hero .riko-home-premium-hero::before {
        inset: -6%;
        background-position: 0 0, 7px 7px;
        background-size: 14px 14px, 28px 28px;
    }

    body.riko-page-home #tm-hero .riko-home-premium-hero::after {
        right: -28%;
        bottom: -30%;
        width: 92%;
        height: 78%;
        opacity: 0.34;
    }

    body.riko-page-home #tm-top-b .rhp-library::before,
    body.riko-page-home #tm-top-b .rhp-about::before,
    body.riko-page-home #tm-top-b .rhp-partners::before {
        inset: -28px -34px auto auto !important;
        width: 210px;
        height: 160px;
        background-size: 15px 15px, 30px 30px !important;
        opacity: 0.48 !important;
    }
}

/* Homepage central colour rhythm - Codex 2026-07-23.
   Colour belongs to the section surfaces; content cards stay quiet and readable. */
body.riko-page-home #tm-top-b .uk-panel.uk-panel-box:has(.riko-home-premium) {
    border-color: color-mix(in srgb, var(--riko-line) 78%, transparent) !important;
    background:
        radial-gradient(circle at 92% 4%, color-mix(in srgb, var(--riko-brand-end) 11%, transparent), transparent 28rem),
        linear-gradient(180deg, var(--riko-surface-soft) 0%, var(--riko-surface-soft) 100%) !important;
}

body.riko-page-home #tm-top-b .riko-home-premium {
    --rhp-blue: var(--riko-action);
    --rhp-muted: var(--riko-muted);
}



body.riko-page-home #tm-top-b .rhp-library {
    background:
        radial-gradient(circle at 0 0, color-mix(in srgb, var(--riko-brand-end) 15%, transparent), transparent 25rem),
        linear-gradient(135deg, var(--riko-surface-soft) 0%, var(--riko-surface-soft) 48%, var(--riko-surface-soft) 100%) !important;
}

body.riko-page-home #tm-top-b .riko-home-premium .rhp-about-band {
    border: 1px solid color-mix(in srgb, var(--riko-action) 76%, transparent) !important;
    border-radius: 24px !important;
    background: linear-gradient(135deg, var(--riko-surface-soft) 0%, var(--riko-surface-soft) 58%, var(--riko-surface-soft) 100%) !important;
}

body.riko-page-home #tm-top-b .rhp-about {
    background:
        linear-gradient(90deg, var(--riko-brand-end) 0, var(--riko-brand-end) 5px, transparent 5px),
        linear-gradient(135deg, var(--riko-surface) 0%, var(--riko-surface-soft) 66%, var(--riko-surface-soft) 100%) !important;
}

body.riko-page-home #tm-top-b .rhp-discover {
    border-color: color-mix(in srgb, var(--riko-line) 82%, transparent) !important;
    background: var(--riko-surface) !important;
}

body.riko-page-home #tm-top-b .rhp-partners {
    border-color: color-mix(in srgb, var(--riko-action) 80%, transparent) !important;
    background: linear-gradient(120deg, var(--riko-surface-soft) 0%, var(--riko-surface) 58%, var(--riko-surface-soft) 100%) !important;
}

body.riko-page-home #tm-top-b .rhp-partner-grid a {
    border-color: color-mix(in srgb, var(--riko-line) 84%, transparent);
    background: color-mix(in srgb, var(--riko-surface) 96%, transparent);
}

body.riko-page-home #tm-top-b .rhp-library__head .rhp-kicker,
body.riko-page-home #tm-top-b .rhp-library__head .rhp-eyebrow,
body.riko-page-home #tm-top-b .rhp-about .rhp-kicker {
    color: var(--riko-ink);
    font-weight: 700;
}

body.riko-page-home #tm-top-b .rhp-quick-links a:focus-visible,
body.riko-page-home #tm-top-b .rhp-partner-grid a:focus-visible {
    outline: 3px solid var(--riko-focus) !important;
    outline-offset: 3px;
}

/* Partner logos own a paper-white artwork surface in both colour modes.
   An inset artwork-ink ring remains visible inside that invariant surface. */
body.riko-page-home #tm-top-b .rhp-partner-grid a:focus-visible {
    outline-color: var(--riko-artwork-ink) !important;
    outline-offset: -4px;
}

@media (max-width: 980px) {
    body.riko-page-home #tm-top-b .riko-home-premium .rhp-about-band {
        gap: 12px;
        padding: 12px !important;
    }
}

@media (max-width: 700px) {
    body.riko-page-home #tm-top-b .riko-home-premium .rhp-about-band {
        gap: 8px;
        padding: 8px !important;
        border-radius: 21px !important;
    }

}

/* Homepage aviation surfaces — 2026-09-12.
   Decorative local SVGs, no new content or script. Never target the site header. */
body.riko-page-home #tm-top-b {
    margin: 4px 0 0;
    background:
        linear-gradient(180deg, color-mix(in srgb, var(--riko-surface-soft) 85.1%, transparent), color-mix(in srgb, var(--riko-surface-soft) 92.16%, transparent)),
        url("../images/home-airframe.svg?v=20260912") left -380px top 80px / 1400px auto no-repeat,
        url("../images/home-navigation.svg?v=20260912") right -160px bottom 60px / 1100px auto no-repeat;
}

body.riko-page-home #tm-hero .riko-home-premium-hero {
    padding: 24px;
    border-radius: 16px;
    background: linear-gradient(118deg, var(--riko-brand-deep) 0%, var(--riko-brand) 52%, var(--riko-brand-end) 100%) !important;
}

body.riko-page-home #tm-hero .riko-home-premium-hero::before {
    inset: 0;
    background: url("../images/home-airframe.svg?v=20260912") left -320px center / auto 115% no-repeat;
    opacity: var(--riko-motif-opacity);
    transform: none;
    -webkit-mask-image: linear-gradient(90deg, #000, #000 48%, transparent 80%);
    mask-image: linear-gradient(90deg, #000, #000 48%, transparent 80%);
}

body.riko-page-home #tm-hero .riko-home-premium-hero::after {
    inset: 0;
    width: auto;
    height: auto;
    background: url("../images/home-navigation.svg?v=20260912") right center / auto 100% no-repeat;
    opacity: var(--riko-motif-opacity);
    transform: none;
    -webkit-mask-image: linear-gradient(90deg, transparent 30%, #000);
    mask-image: linear-gradient(90deg, transparent 30%, #000);
}

body.riko-page-home #tm-hero .riko-home-premium-hero__inner {
    gap: 24px;
}

body.riko-page-home #tm-hero .riko-home-premium-hero h1 {
    font-size: clamp(34px, 2.5vw, 44px);
    line-height: 1.1;
    letter-spacing: -.025em;
    text-wrap: balance;
}

body.riko-page-home #tm-hero .riko-home-premium-eyebrow {
    padding: 6px 10px;
    margin-bottom: 16px;
    border-radius: 5px;
    background: color-mix(in srgb, var(--riko-brand-deep) 78.82%, transparent);
    font-size: 11px;
    letter-spacing: .06em;
}

body.riko-page-home #tm-hero .riko-home-premium-lead {
    max-width: 65ch;
    font-size: 15px;
    font-weight: 400;
    line-height: 1.6;
}

body.riko-page-home #tm-hero .riko-home-premium-proof {
    gap: 0;
    padding: 14px 0;
    border-block: 1px solid color-mix(in srgb, var(--riko-line) 20%, transparent);
}

body.riko-page-home #tm-hero .riko-home-premium-proof article {
    min-height: 0;
    padding: 0 14px;
    border: 0;
    border-inline-start: 1px solid color-mix(in srgb, var(--riko-line) 25.1%, transparent);
    border-radius: 0;
    background: transparent;
    box-shadow: none;
}

body.riko-page-home #tm-hero .riko-home-premium-proof article:first-child {
    padding-inline-start: 0;
    border-inline-start: 0;
}

body.riko-page-home #tm-hero .riko-home-premium-proof article::after,
body.riko-page-home #tm-hero .riko-home-premium-feature__body::before {
    content: none;
}

body.riko-page-home #tm-hero .riko-home-premium-proof strong {
    font-size: clamp(19px, 1.45vw, 25px);
    line-height: 1.1;
    letter-spacing: -.02em;
    font-variant-numeric: tabular-nums;
}

body.riko-page-home #tm-hero .riko-home-premium-proof em {
    font-size: 10px;
    letter-spacing: .03em;
}

body.riko-page-home #tm-hero .riko-home-premium-proof span {
    margin-top: 5px;
    color: var(--riko-on-brand-muted);
    font-weight: 400;
    font-size: 11px;
}

body.riko-page-home #tm-hero .riko-home-premium-btn,
body.riko-page-home #tm-hero .riko-home-premium-feature__link {
    min-height: 44px;
    border-radius: 7px;
    box-shadow: none;
    font-size: 13px;
}

body.riko-page-home #tm-hero .riko-home-premium-btn-secondary {
    color: var(--riko-link);
    background: var(--riko-action-soft);
    border-color: var(--riko-line);
}

body.riko-page-home #tm-hero .riko-home-premium-feature {
    border-radius: 14px;
    border-color: color-mix(in srgb, var(--riko-action) 30.2%, transparent);
    background: linear-gradient(135deg, var(--riko-brand), var(--riko-brand-deep));
    color: var(--riko-on-brand-muted);
    box-shadow: 0 8px 22px color-mix(in srgb, var(--riko-brand-deep) 10.2%, transparent);
}

body.riko-page-home #tm-hero .riko-home-premium-feature__image {
    min-height: 246px;
}

body.riko-page-home #tm-hero .riko-home-premium-feature__body {
    padding: 20px;
}

body.riko-page-home #tm-hero .riko-home-premium-feature__meta {
    gap: 6px;
    margin-bottom: 10px;
}

body.riko-page-home #tm-hero .riko-home-premium-feature__meta span {
    min-height: 23px;
    padding-inline: 8px;
    border-radius: 4px;
    background: color-mix(in srgb, var(--riko-inverse) 7.06%, transparent);
    color: var(--riko-on-brand);
}

body.riko-page-home #tm-hero .riko-home-premium-feature h2 {
    color: var(--riko-on-brand-muted);
    font-size: 24px;
    line-height: 1.18;
    letter-spacing: -.015em;
}

body.riko-page-home #tm-hero .riko-home-premium-feature__description {
    max-width: none;
    font-size: 14px !important;
    font-weight: 400 !important;
    color: var(--riko-on-brand-muted) !important;
}

body.riko-page-home #tm-hero .riko-home-premium-feature__note {
    color: var(--riko-on-brand-muted) !important;
}

body.riko-page-home #tm-hero .riko-home-premium-feature h2 a:is(:hover, :focus-visible) {
    color: var(--riko-on-brand);
    text-decoration: underline;
    text-underline-offset: .14em;
}

body.riko-page-home #tm-hero .riko-home-premium-feature__link {
    margin-top: 12px;
    background: var(--riko-surface-soft);
    color: var(--riko-ink);
}

body.riko-page-home #tm-hero .riko-home-premium-feature__link:is(:hover, :focus-visible) {
    background: var(--riko-action-soft-hover);
    color: var(--riko-focus);
}

/* Remove the extra frame around the sections, retaining their own clear edges. */
body.riko-page-home #tm-top-b > .uk-width-1-1:has(.riko-home-premium) {
    padding-inline: 0;
}

body.riko-page-home #tm-top-b .uk-panel.uk-panel-box:has(.riko-home-premium) {
    padding: 0 !important;
    border: 0 !important;
    border-radius: 0 !important;
    background: transparent !important;
    box-shadow: none !important;
}

body.riko-page-home #tm-top-b .riko-home-premium {
    margin-inline: 0;
    width: 100%;
    max-width: none;
    gap: 24px !important;
    --rhp-line: var(--riko-line);
    --rhp-green: var(--riko-action);
}

body.riko-page-home #tm-top-b .riko-home-premium .rhp-section,
body.riko-page-home #tm-top-b .rhp-about,
body.riko-page-home #tm-top-b .rhp-discover,
body.riko-page-home #tm-top-b .rhp-partners {
    border-radius: 16px;
    box-shadow: none;
}










body.riko-page-home #tm-top-b .rhp-quick-links a{
    border-radius: 6px;
    min-height: 40px;
    display: inline-flex;
    align-items: center;
    padding: 8px 12px;
    box-shadow: none;
}

body.riko-page-home #tm-top-b .rhp-library {
    padding: 24px;
    border-color: var(--riko-line) !important;
    background: linear-gradient(125deg, var(--riko-surface-soft), var(--riko-surface-soft)) var(--riko-surface-soft) !important;
}





/* Both desktop and mobile controls share the same selected state. */
body.riko-page-home #tm-top-b .rhp-library .rhp-tabs {
    background: var(--riko-surface);
    border-color: var(--riko-line);
}

body.riko-page-home #tm-top-b .rhp-library .rhp-tabs button {
    min-height: 40px;
    color: var(--riko-link);
}

body.riko-page-home #tm-top-b .rhp-library .rhp-tabs button:hover {
    background: var(--riko-action-soft-hover);
}

body.riko-page-home #tm-top-b .rhp-library .rhp-tabs button[aria-selected="true"] {
    color: var(--riko-action-contrast);
    background: var(--riko-action-hover);
    box-shadow: none;
}

body.riko-page-home #tm-top-b .rhp-library::before,
body.riko-page-home #tm-top-b .rhp-partners::before {
    inset: 0 0 auto auto !important;
    width: 720px;
    height: 330px;
    background: url("../images/home-airframe.svg?v=20260912") right top / contain no-repeat !important;
    opacity: .38 !important;
    -webkit-mask-image: linear-gradient(180deg, #000, transparent 90%);
    mask-image: linear-gradient(180deg, #000, transparent 90%);
}

body.riko-page-home #tm-top-b .rhp-library__head h2,
body.riko-page-home #tm-top-b .rhp-about h2 {
    font-size: 30px;
    line-height: 1.2;
    letter-spacing: -.02em;
}

body.riko-page-home #tm-top-b .rhp-library__head {
    gap: 16px;
    margin-bottom: 20px;
}

body.riko-page-home #tm-top-b .rhp-library__grid {
    grid-template-columns: minmax(0, .86fr) minmax(0, 1fr);
    gap: 24px;
}

body.riko-page-home #tm-top-b .rhp-lead-addon,
body.riko-page-home #tm-top-b .rhp-addon-panel {
    border-radius: 10px;
    box-shadow: none;
}

body.riko-page-home #tm-top-b .rhp-lead-addon {
    display: flex;
    flex-direction: column;
    border-color: var(--riko-brand);
    background: var(--riko-brand-deep);
}

body.riko-page-home #tm-top-b .rhp-lead-addon__image {
    min-height: 275px;
    flex: 0 0 auto;
}

body.riko-page-home #tm-top-b .rhp-lead-addon__body {
    padding: 20px;
    flex: 1;
    background: linear-gradient(135deg, var(--riko-brand), var(--riko-brand-deep));
}

body.riko-page-home #tm-top-b .rhp-lead-addon__body h3 {
    margin: 0;
    font-size: 24px;
    line-height: 1.2;
    letter-spacing: -.02em;
    color: var(--riko-on-brand);
    font-weight: 700;
}

body.riko-page-home #tm-top-b .rhp-lead-addon__body h3 a {
    color: var(--riko-on-brand);
}

body.riko-page-home #tm-top-b .rhp-lead-addon__body h3 a:hover {
    text-decoration: underline;
    text-underline-offset: 3px;
}

body.riko-page-home #tm-top-b .rhp-lead-addon__body p {
    font-size: 14px;
    line-height: 1.5;
    color: var(--riko-on-brand-muted);
}

body.riko-page-home #tm-top-b .rhp-lead-addon__body .rhp-meta-row span {
    color: var(--riko-on-brand-muted);
    background: var(--riko-brand);
}

body.riko-page-home #tm-top-b .rhp-lead-addon__body > .rhp-text-link {
    min-height: 44px;
    padding: 10px 16px;
    border-radius: 6px;
    color: var(--riko-on-brand);
    background: var(--riko-brand);
    text-decoration: none;
}

body.riko-page-home #tm-top-b .rhp-lead-addon__body > .rhp-text-link:hover {
    color: var(--riko-action-contrast);
    background: var(--riko-action-hover);
}

body.riko-page-home #tm-top-b .rhp-lead-addon__body > .rhp-text-link::after {
    background: currentColor;
}


body.riko-page-home #tm-top-b .rhp-lead-addon__body a:focus-visible{
    /* Override the shared custom.css important focus halo, only here. */
    outline: 3px solid var(--riko-focus-on-brand) !important;
    outline-offset: 3px;
    box-shadow: none !important;
}

body.riko-page-home #tm-top-b .rhp-library .rhp-tabs button:focus-visible,
body.riko-page-home #tm-top-b .rhp-library .rhp-addon-row:focus-visible {
    outline: 3px solid var(--riko-focus) !important;
    outline-offset: 3px;
    box-shadow: none !important;
}

body.riko-page-home #tm-top-b .rhp-addon-panel {
    padding: 0;
    border: 0;
    background: transparent;
    gap: 8px;
}

body.riko-page-home #tm-top-b .rhp-addon-row {
    min-height: 78px;
    padding: 9px 12px;
    border-radius: 8px;
    border-color: var(--riko-line);
    background: var(--riko-surface);
}

body.riko-page-home #tm-top-b .rhp-addon-row:hover {
    border-color: var(--riko-action-hover);
    background: var(--riko-action-soft-hover);
}

body.riko-page-home #tm-top-b .rhp-addon-row img {
    border-radius: 5px;
}

/* A darker community band creates a clear change of pace below the library. */
body.riko-page-home #tm-top-b .riko-home-premium .rhp-about-band {
    grid-template-columns: minmax(0, 2fr) minmax(320px, 1fr);
    gap: 24px;
    padding: 0 !important;
    border: 0 !important;
    background: transparent !important;
    box-shadow: none !important;
}

body.riko-page-home #tm-top-b .rhp-about {
    padding: 24px;
    display: flex;
    flex-direction: column;
    justify-content: center;
    border-color: var(--riko-brand) !important;
    background: linear-gradient(120deg, var(--riko-brand-deep), var(--riko-brand)) !important;
    color: var(--riko-on-brand-muted);
}

body.riko-page-home #tm-top-b .rhp-about::before {
    inset: 0 !important;
    width: auto;
    height: auto;
    background: url("../images/home-navigation.svg?v=20260912") right center / auto 110% no-repeat !important;
    opacity: var(--riko-motif-opacity) !important;
    -webkit-mask-image: linear-gradient(90deg, transparent, #000 60%);
    mask-image: linear-gradient(90deg, transparent, #000 60%);
}

body.riko-page-home #tm-top-b .rhp-about h2,
body.riko-page-home #tm-top-b .rhp-about__lead strong,
body.riko-page-home #tm-top-b .rhp-about__points strong {
    color: var(--riko-on-brand);
}

body.riko-page-home #tm-top-b .rhp-about .rhp-kicker,
body.riko-page-home #tm-top-b .rhp-about .rhp-eyebrow {
    color: var(--riko-on-brand-muted);
    font-weight: 700;
}

body.riko-page-home #tm-top-b .rhp-about__points p {
    color: var(--riko-on-brand-muted);
}

body.riko-page-home #tm-top-b .rhp-about__lead {
    max-width: 68ch;
    color: var(--riko-on-brand-muted);
    font-size: 15px;
    line-height: 1.6;
}

body.riko-page-home #tm-top-b .rhp-about__points {
    margin-top: 20px;
    gap: 16px;
}

body.riko-page-home #tm-top-b .rhp-about__points > * {
    min-height: 0;
    padding: 0 0 0 14px;
    border: 0;
    border-left: 2px solid var(--riko-line);
    border-radius: 0;
    background: transparent;
    color: var(--riko-on-brand-muted);
    box-shadow: none;
    font-size: 13px;
    line-height: 1.5;
}

body.riko-page-home #tm-top-b .rhp-discover__image {
    height: 180px;
    min-height: 0;
    flex: 0 0 auto;
}

body.riko-page-home #tm-top-b .rhp-discover__image img {
    width: 100%;
    height: 100%;
    min-height: 0;
    object-fit: cover;
}

body.riko-page-home #tm-top-b .rhp-discover__body {
    padding: 20px;
}

body.riko-page-home #tm-top-b .rhp-discover h3 {
    font-size: 24px;
    line-height: 1.2;
    font-weight: 700;
}

body.riko-page-home #tm-top-b .rhp-partners {
    padding: 24px;
    background: linear-gradient(110deg, var(--riko-surface-soft), var(--riko-surface) 65%, var(--riko-surface-soft)) var(--riko-surface) !important;
}

body.riko-page-home #tm-top-b .rhp-partners::before {
    width: 600px;
    background-image: url("../images/home-navigation.svg?v=20260912") !important;
    opacity: var(--riko-motif-opacity) !important;
}

body.riko-page-home #tm-top-b .rhp-partner-grid a {
    border-radius: 7px;
    box-shadow: none;
    background: var(--riko-artwork-surface);
    color: var(--riko-artwork-ink) !important;
}

body.riko-page-home #tm-top-b .rhp-partners h2 {
    margin: 0;
    font-size: 24px;
    line-height: 1.2;
    font-weight: 700;
}

body.riko-page-home #tm-top-b .rhp-partner-grid {
    gap: 12px;
    margin-top: 16px;
}

body.riko-page-home #tm-hero :is(a, button):focus-visible,
body.riko-page-home #tm-top-b :is(a, button):focus-visible {
    outline: 3px solid var(--riko-focus);
    outline-offset: 3px;
}

@media (max-width: 1100px) {
    body.riko-page-home #tm-top-b .rhp-about__points {
        grid-template-columns: 1fr;
    }

    body.riko-page-home #tm-hero .riko-home-premium-hero__inner {
        grid-template-columns: 1fr;
        gap: 24px;
    }

    body.riko-page-home #tm-hero .riko-home-premium-feature {
        display: grid;
        grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
    }

    body.riko-page-home #tm-hero .riko-home-premium-feature__image {
        min-height: 240px;
    }
}

@media (max-width: 980px) {
    body.riko-page-home #tm-top-b .riko-home-premium .rhp-about-band {
        grid-template-columns: 1fr;
    }

    body.riko-page-home #tm-top-b .rhp-discover {
        display: grid;
        grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
    }

    body.riko-page-home #tm-top-b .rhp-discover__image {
        height: 100%;
    }

    body.riko-page-home #tm-top-b .rhp-library__grid {
        grid-template-columns: 1fr;
        gap: 16px;
    }

    body.riko-page-home #tm-top-b .rhp-lead-addon__image {
        min-height: 0;
        aspect-ratio: 16 / 9;
    }
}

@media (max-width: 700px) {
    body.riko-page-home #tm-hero .riko-home-premium-hero {
        padding: 20px 16px;
        border-radius: 12px !important;
    }

    body.riko-page-home #tm-hero .riko-home-premium-hero::before {
        background-position: left -460px top;
        background-size: auto 560px;
        opacity: .2;
    }

    body.riko-page-home #tm-hero .riko-home-premium-hero h1 {
        font-size: clamp(28px, 7.2vw, 34px) !important;
        line-height: 1.13;
    }

    body.riko-page-home #tm-hero .riko-home-premium-lead {
        font-size: 14px;
    }

    body.riko-page-home #tm-hero .riko-home-premium-proof article {
        padding: 0 8px;
        min-height: 0;
        border-radius: 0;
    }

    body.riko-page-home #tm-hero .riko-home-premium-proof strong {
        font-size: clamp(14px, 4.25vw, 20px);
    }

    body.riko-page-home #tm-hero .riko-home-premium-proof em {
        font-size: 9px;
        line-height: 1.4;
    }

    body.riko-page-home #tm-hero .riko-home-premium-feature {
        display: block;
    }

    body.riko-page-home #tm-hero .riko-home-premium-feature__image {
        min-height: 0;
        aspect-ratio: 16 / 9;
    }

    body.riko-page-home #tm-top-b .riko-home-premium {
        gap: 16px !important;
    }

    body.riko-page-home #tm-top-b .riko-home-premium .rhp-about-band {
        gap: 16px;
    }

    body.riko-page-home #tm-top-b .rhp-discover {
        display: block;
    }

    body.riko-page-home #tm-top-b .rhp-discover__image {
        height: auto;
        aspect-ratio: 16 / 9;
        max-height: 240px;
    }

    body.riko-page-home #tm-top-b .rhp-quick-links {
        display: grid;
        grid-template-columns: repeat(2, minmax(0, 1fr));
        gap: 8px;
    }

    body.riko-page-home #tm-top-b .rhp-quick-links a {
        justify-content: center;
    }

    body.riko-page-home #tm-hero .riko-home-premium-feature__body,
    body.riko-page-home #tm-top-b .rhp-lead-addon__body,
    body.riko-page-home #tm-top-b .rhp-discover__body {
        padding: 16px;
    }

    body.riko-page-home #tm-hero .riko-home-premium-feature h2,
    body.riko-page-home #tm-top-b .rhp-lead-addon__body h3,
    body.riko-page-home #tm-top-b .rhp-discover h3 {
        font-size: 22px;
        line-height: 1.2;
    }

    

    
    body.riko-page-home #tm-top-b .rhp-quick-links a{
        min-height: 42px !important;
    }

    body.riko-page-home #tm-top-b .rhp-library__head h2,
    body.riko-page-home #tm-top-b .rhp-about h2 {
        font-size: 27px !important;
    }

    body.riko-page-home #tm-top-b .riko-home-premium .rhp-section,
    body.riko-page-home #tm-top-b .rhp-about,
    body.riko-page-home #tm-top-b .rhp-discover,
    body.riko-page-home #tm-top-b .rhp-partners {
        border-radius: 12px !important;
    }

    body.riko-page-home #tm-top-b .rhp-lead-addon__image {
        min-height: 0 !important;
    }

    body.riko-page-home #tm-top-b .rhp-library,
    body.riko-page-home #tm-top-b .rhp-about,
    body.riko-page-home #tm-top-b .rhp-partners {
        padding: 20px 16px !important;
    }

    body.riko-page-home #tm-top-b .rhp-about__points > * {
        padding: 0 0 0 12px !important;
        border-radius: 0 !important;
    }

    body.riko-page-home #tm-top-b .rhp-library::before,
    body.riko-page-home #tm-top-b .rhp-partners::before {
        width: 380px;
        height: 200px;
        opacity: .1 !important;
    }
}

@media (forced-colors: active) {
    body.riko-page-home #tm-top-b {
        background: none;
    }

    body.riko-page-home #tm-hero .riko-home-premium-hero::before,
    body.riko-page-home #tm-hero .riko-home-premium-hero::after,
    body.riko-page-home #tm-top-b .rhp-library::before,
    body.riko-page-home #tm-top-b .rhp-about::before,
    body.riko-page-home #tm-top-b .rhp-partners::before {
        display: none;
    }
}

/* The native grid wrapper inherits the homepage hero surface. */
html[data-riko-mode="dark"] body.riko-page-home #tm-hero > [class*="uk-width"] {
    background-color: transparent;
}

/* These wrappers only arrange the rounded panels. Keep the page photograph
   visible in their gaps and corners, including the native hero's bottom pad.
   The reading and brand surfaces remain on the panels inside them. */
@media screen and (forced-colors: none) {
    :root:is(:not([data-riko-palette]), [data-riko-palette="default"], [data-riko-palette="forest"]) body.riko-page-home #tm-hero > [class*="uk-width"],
    :root:is(:not([data-riko-palette]), [data-riko-palette="default"], [data-riko-palette="forest"]) body.riko-page-home #tm-top-b,
    :root:is(:not([data-riko-palette]), [data-riko-palette="default"], [data-riko-palette="forest"]) body.riko-page-home #tm-top-b .riko-home-premium .rhp-about-band {
        background: none !important;
        box-shadow: none !important;
    }
}

/* The list panorama uses a dark veil in both display modes. Its text follows
   the existing inverse roles; layout, thumbnails and focus rings stay intact. */
@media screen and (forced-colors: none) {
    :root:is(:not([data-riko-palette]), [data-riko-palette="default"], [data-riko-palette="forest"]) body.riko-page-home #tm-top-b .rhp-addon-row .rhp-addon-row__text strong {
        color: var(--riko-on-brand);
    }

    :root:is(:not([data-riko-palette]), [data-riko-palette="default"], [data-riko-palette="forest"]) body.riko-page-home #tm-top-b .rhp-addon-row .rhp-addon-row__text span {
        color: var(--riko-on-brand-muted);
    }

    :root:is(:not([data-riko-palette]), [data-riko-palette="default"], [data-riko-palette="forest"]) body.riko-page-home #tm-top-b .rhp-addon-row em {
        color: var(--riko-focus-on-brand);
    }
}

/* Plain light panels also omit their old aircraft/chart and dot ornaments.
   Dark home panels and the stars-to-clouds list rows keep their decoration. */
@media screen and (forced-colors: none) {
    :root[data-riko-mode="light"]:is(:not([data-riko-palette]), [data-riko-palette="default"]) body.riko-page-home #tm-top-b .rhp-library::before,
    :root[data-riko-mode="light"]:is(:not([data-riko-palette]), [data-riko-palette="default"]) body.riko-page-home #tm-top-b .rhp-partners::before,
    :root[data-riko-mode="light"]:is(:not([data-riko-palette]), [data-riko-palette="default"]) body.riko-page-home #tm-hero .riko-home-premium-proof article::after {
        content: none !important;
        display: none !important;
    }
}

/* The homepage uses the catalogue compatibility roles. Titles and editorial
   mentions stay ordinary text; only explicit simulator metadata is marked. */
body.riko-page-home #tm-top-b .rhp-addon-row .rhp-addon-row__text .rhp-addon-row__meta {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 5px 7px;
    overflow: visible;
    white-space: normal;
}

body.riko-page-home #tm-top-b .rhp-addon-row .rhp-addon-row__text .rhp-addon-row__detail {
    margin: 0;
    overflow: visible;
    white-space: normal;
    line-height: 1.35;
}

body.riko-page-home :is(#tm-hero, #tm-top-b) span[data-riko-simulator] {
    display: inline-flex;
    flex: 0 0 auto;
    align-items: center;
    min-height: 24px;
    margin: 0;
    padding: 4px 7px;
    border-radius: 4px;
    font-size: 11px;
    font-weight: 700;
    line-height: 1.25;
    white-space: nowrap;
}

@media screen and (forced-colors: none) {
    body.riko-page-home [data-riko-simulator="msfs2020"] {
        --home-simulator-fill: var(--riko-simulator-2020);
        --home-simulator-line: var(--riko-simulator-2020-line);
    }

    body.riko-page-home [data-riko-simulator="msfs2024"] {
        --home-simulator-fill: var(--riko-simulator-2024);
        --home-simulator-line: var(--riko-simulator-2024-line);
    }

    body.riko-page-home :is(#tm-hero, #tm-top-b) [data-riko-simulator] {
        color: var(--riko-simulator-ink) !important;
        background: var(--home-simulator-fill) !important;
        border-color: var(--home-simulator-line) !important;
    }

    body.riko-page-home .riko-home-catalog-links a[data-riko-simulator]:hover {
        text-decoration: underline;
        text-underline-offset: 3px;
    }

    body.riko-page-home :is(.rhp-lead-addon, .rhp-addon-row, .riko-home-premium-feature):has([data-riko-simulator="msfs2020"]) {
        --home-simulator-frame-start: var(--riko-simulator-2020-line);
        --home-simulator-frame-end: var(--riko-simulator-2020-line);
    }

    body.riko-page-home :is(.rhp-lead-addon, .rhp-addon-row, .riko-home-premium-feature):has([data-riko-simulator="msfs2024"]) {
        --home-simulator-frame-start: var(--riko-simulator-2024-line);
        --home-simulator-frame-end: var(--riko-simulator-2024-line);
    }

    body.riko-page-home :is(.rhp-lead-addon, .rhp-addon-row, .riko-home-premium-feature):has([data-riko-simulator="msfs2020"]):has([data-riko-simulator="msfs2024"]) {
        --home-simulator-frame-start: var(--riko-simulator-2020-line);
        --home-simulator-frame-end: var(--riko-simulator-2024-line);
    }

    body.riko-page-home :is(#tm-hero, #tm-top-b) :is(.rhp-lead-addon, .rhp-addon-row, .riko-home-premium-feature):has([data-riko-simulator]) {
        border-width: 2px;
        border-color: var(--home-simulator-frame-start) var(--home-simulator-frame-end) var(--home-simulator-frame-end) var(--home-simulator-frame-start) !important;
    }
}

@media (forced-colors: active) {
    body.riko-page-home [data-riko-simulator] {
        color: CanvasText !important;
        background: Canvas !important;
        border: 1px solid CanvasText !important;
    }
}
