/* L09 – Fintech / Crypto (no radius) */

body.l09{
    background:
            radial-gradient(900px 420px at 30% 0%, rgba(60,120,255,.14), transparent 60%),
            radial-gradient(900px 420px at 80% 30%, rgba(255,90,160,.10), transparent 60%),
            linear-gradient(180deg, #070a10, #05060a);
    color: var(--text);
}

.l09-topbar{
    background: rgba(0,0,0,.42);
    border-bottom: 1px solid rgba(255,255,255,.06);
    backdrop-filter: blur(12px);
}
.l09-topbar-inner{ display:flex; align-items:center; justify-content:space-between; }
.l09-logo-mark{
    background: rgba(255,255,255,.06);
    border: 1px solid rgba(255,255,255,.12);
}
.l09-topnav a{ color: rgba(255,255,255,.82); }
.l09-topnav a:hover{ color:#fff; }

.l09-portal{ padding-bottom: 28px; }

/* HERO */
.l09-hero{
    margin-top: 18px;
    position:relative;
    min-height: 520px;
    border: 1px solid rgba(255,255,255,.08);
    background-size: cover;
    background-position: center;
    overflow:hidden;
    box-shadow: var(--shadow);
}
.l09-hero-overlay{
    position:absolute; inset:0;
    background:
            linear-gradient(180deg, rgba(0,0,0,.70), rgba(0,0,0,.30)),
            radial-gradient(520px 240px at 50% 30%, rgba(60,120,255,.18), transparent 60%);
}
.l09-hero-inner{
    position:relative;
    padding: 56px 26px 26px;
    max-width: 860px;
}
.l09-hero-topline{
    font-size: 11px;
    letter-spacing: .8px;
    color: rgba(255,255,255,.75);
    text-transform: uppercase;
}
.l09-hero-title{
    margin: 10px 0 0;
    font-size: 46px;
    line-height: 1.05;
    font-weight: 900;
    letter-spacing: .3px;
    text-transform: uppercase;
}
.l09-hero-sub{
    margin: 12px 0 0;
    color: rgba(255,255,255,.75);
    max-width: 70ch;
}
.l09-cta{
    display:inline-flex;
    margin-top: 18px;
    padding: 10px 14px;
    border: 1px solid rgba(255,255,255,.14);
    background: rgba(255,255,255,.06);
    color:#fff;
    text-decoration:none;
}
.l09-cta:hover{ background: rgba(255,255,255,.10); }

.l09-scrollhint{
    width: 34px; height: 48px;
    margin-top: 22px;
    border: 1px solid rgba(255,255,255,.16);
    background: rgba(0,0,0,.15);
    display:flex; align-items:center; justify-content:center;
    color: rgba(255,255,255,.75);
}

/* BELOW */
.l09-below{ margin-top: 18px; }
.l09-below-grid{
    display:grid;
    grid-template-columns: 340px minmax(0, 1fr);
    gap: 18px;
}

/* feature cards */
.l09-feature{
    display:block;
    text-decoration:none;
    color:inherit;
    background: rgba(255,255,255,.04);
    border: 1px solid rgba(255,255,255,.08);
    box-shadow: var(--shadow-soft);
    overflow:hidden;
}
.l09-feature + .l09-feature{ margin-top: 14px; }

.l09-feature-media{
    height: 140px;
    background-size: cover;
    background-position:center;
}
.l09-feature-body{ padding: 12px; }
.l09-feature-kicker{
    font-size: 12px;
    letter-spacing: .5px;
    text-transform: uppercase;
    color: rgba(120,190,255,.85);
    font-weight: 800;
}
.l09-feature-title{ margin-top: 6px; font-weight: 900; text-transform: uppercase; }
.l09-feature-text{ margin-top: 8px; }

/* promo big */
.l09-promo{
    position:relative;
    display:block;
    min-height: 320px;
    text-decoration:none;
    color:inherit;
    border: 1px solid rgba(255,255,255,.08);
    overflow:hidden;
    box-shadow: var(--shadow);
}
.l09-promo-bg{
    position:absolute; inset:0;
    background-size: cover;
    background-position:center;
    filter: contrast(1.05) saturate(1.05);
}
.l09-promo-shade{
    position:absolute; inset:0;
    background: linear-gradient(90deg, rgba(0,0,0,.55), rgba(0,0,0,.25));
}
.l09-promo-body{
    position:relative;
    padding: 18px;
    max-width: 520px;
}
.l09-promo-title{
    font-size: 28px;
    font-weight: 900;
    text-transform: uppercase;
    line-height: 1.1;
}
.l09-promo-text{ margin-top: 10px; }
.l09-promo-link{
    margin-top: 14px;
    display:inline-block;
    color: rgba(255,255,255,.9);
}

/* MORE */
.l09-more{ margin-top: 20px; }
.l09-more-head{ display:flex; justify-content:space-between; align-items:center; margin-bottom: 10px; }
.l09-h1{ font-size: 34px; margin:0 0 10px; font-weight: 900; }
.l09-h2{ font-size: 18px; margin:0; font-weight: 900; text-transform: uppercase; }
.l09-link{ color: rgba(255,255,255,.85); text-decoration:none; }
.l09-link:hover{ color:#fff; }

.l09-more-grid{
    display:grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 12px;
}
.l09-mini{
    text-decoration:none;
    color:inherit;
    border: 1px solid rgba(255,255,255,.08);
    background: rgba(255,255,255,.04);
    overflow:hidden;
}
.l09-mini-thumb{ height: 140px; background-size: cover; background-position:center; }
.l09-mini-body{ padding: 12px; }
.l09-mini-title{ font-weight: 800; line-height: 1.15; }
.l09-mini-meta{ margin-top: 8px; font-size: 12px; color: rgba(255,255,255,.68); }

/* LIST */
.l09-pagehead{ margin: 18px 0 14px; }
.l09-list{ display:flex; flex-direction:column; gap: 12px; }
.l09-row{
    display:grid;
    grid-template-columns: 240px 1fr;
    gap: 12px;
    text-decoration:none;
    color:inherit;
    border: 1px solid rgba(255,255,255,.08);
    background: rgba(255,255,255,.04);
}
.l09-row-thumb{ height: 150px; background-size: cover; background-position:center; }
.l09-row-body{ padding: 12px; }
.l09-row-title{ font-weight: 900; text-transform: uppercase; }
.l09-row-meta{ margin-top: 8px; font-size: 12px; color: rgba(255,255,255,.68); }
.l09-row-excerpt{ margin-top: 10px; }

/* POST */
.l09-post-grid{
    margin-top: 18px;
    display:grid;
    grid-template-columns: minmax(0, 1fr) 320px;
    gap: 18px;
}
.l09-article{
    border: 1px solid rgba(255,255,255,.08);
    background: rgba(255,255,255,.04);
    padding: 16px;
}
.l09-article-title{ margin:0; font-size: 34px; font-weight: 900; text-transform: uppercase; }
.l09-meta{ margin-top: 10px; font-size: 12px; color: rgba(255,255,255,.68); display:flex; gap:6px; flex-wrap:wrap; }
.l09-dot{ opacity:.7; }
.l09-cover{
    margin-top: 14px;
    height: 360px;
    background-size: cover;
    background-position:center;
    border: 1px solid rgba(255,255,255,.08);
}
.l09-body{ margin-top: 14px; color: rgba(255,255,255,.88); }
.l09-tags a{ color: rgba(255,255,255,.9); text-decoration:none; }

.l09-side{
    border: 1px solid rgba(255,255,255,.08);
    background: rgba(255,255,255,.04);
    padding: 12px;
}
.l09-side-title{ font-weight: 900; text-transform: uppercase; margin-bottom: 10px; }
.l09-side-list{ display:flex; flex-direction:column; gap: 10px; }
.l09-side-item{
    display:grid;
    grid-template-columns: 72px 1fr;
    gap: 10px;
    text-decoration:none;
    color:inherit;
    border: 1px solid rgba(255,255,255,.06);
    background: rgba(0,0,0,.20);
    padding: 8px;
}
.l09-side-thumb{ height: 54px; background-size: cover; background-position:center; }
.l09-side-item-title{ font-weight: 800; line-height: 1.15; }
.l09-side-meta{ margin-top: 6px; font-size: 12px; color: rgba(255,255,255,.65); }

/* BURGER + responsive */
.l09-topnav-mobile{ display:none; }
.l09-nav-toggle{ display:none; }

@media (max-width: 980px){
    .l09-below-grid{ grid-template-columns: 1fr; }
    .l09-more-grid{ grid-template-columns: 1fr; }
    .l09-post-grid{ grid-template-columns: 1fr; }
    .l09-hero-title{ font-size: 38px; }
}

@media (max-width: 820px){
    .topnav-desktop{ display:none; }
    .l09-nav-toggle{
        display:flex;
        align-items:center;
        justify-content:center;
        width:40px; height:40px;
        padding:0;
        border:1px solid rgba(255,255,255,.12);
        background: rgba(0,0,0,.18);
    }
    .l09-nav-toggle svg line{ stroke: rgba(255,255,255,.8); stroke-width:2; }

    .l09-topnav-mobile{
        display:none;
        padding:10px 16px;
        background: rgba(0,0,0,.55);
        border-top: 1px solid rgba(255,255,255,.06);
        border-bottom: 1px solid rgba(255,255,255,.06);
    }
    .l09-topnav-mobile a{
        display:block;
        padding:10px 0;
        border-top:1px solid rgba(255,255,255,.06);
        color: rgba(255,255,255,.9);
    }
    .l09-topnav-mobile a:first-child{ border-top:none; }
    .l09-topnav-mobile[data-open="true"]{ display:block; }
}
