/* L08 – Editorial / Magazine (no radius) */

body.l08{
    background: #0b0c10;
    color: var(--text);
}

.l08-topbar{
    background: rgba(0,0,0,.55);
    border-bottom: 1px solid rgba(255,255,255,.06);
    backdrop-filter: blur(10px);
}
.l08-topbar-inner{
    display:flex;
    align-items:center;
    justify-content:space-between;
}
.l08-logo-mark{
    background:#121318;
    border:1px solid rgba(255,255,255,.12);
}
.l08-logo-text{ color: rgba(255,255,255,.9); }

.l08-topnav a{
    color: rgba(255,255,255,.85);
}
.l08-topnav a:hover{ color:#fff; }

.l08-portal{ padding-bottom: 28px; }

.l08-grid{
    margin-top: 18px;
    display:grid;
    grid-template-columns: 320px minmax(0, 1fr) 300px;
    gap: 18px;
}

/* LEFT cards */
.l08-left{ display:flex; flex-direction:column; gap: 14px; }
.l08-left-card{
    display:grid;
    grid-template-columns: 140px 1fr;
    text-decoration:none;
    color:inherit;
    background:#0f1014;
    border:1px solid rgba(255,255,255,.08);
}
.l08-left-media{
    height: 110px;
    background-size: cover;
    background-position: center;
}
.l08-left-body{ padding: 12px; }
.l08-left-title{
    font-weight: 800;
    line-height: 1.1;
    font-size: 18px;
    letter-spacing: .2px;
}
.l08-meta{
    margin-top: 8px;
    font-size: 12px;
    color: rgba(255,255,255,.68);
    display:flex;
    flex-wrap:wrap;
    gap: 6px;
    align-items:center;
}
.l08-by{ color: rgba(120, 255, 200, .9); font-weight: 700; }
.l08-dot{ opacity:.7; }

/* HERO center */
.l08-hero{
    background:#0f1014;
    border:1px solid rgba(255,255,255,.08);
    overflow:hidden;
}
.l08-hero-media{
    height: 420px;
    background-size: cover;
    background-position: center;
}
.l08-hero-body{ padding: 16px; }
.l08-hero-title{
    margin: 0;
    font-size: 42px;
    line-height: 1.03;
    font-weight: 900;
    letter-spacing: .2px;
}
.l08-hero-excerpt{
    margin: 10px 0 0;
    color: rgba(255,255,255,.70);
    max-width: 70ch;
}
.l08-meta-hero{ margin-top: 10px; }

.l08-btn{
    margin-top: 14px;
    display:inline-flex;
    padding: 10px 14px;
    border: 1px solid rgba(255,255,255,.14);
    background: rgba(255,255,255,.06);
    color:#fff;
    text-decoration:none;
}
.l08-btn:hover{ background: rgba(255,255,255,.10); }

.l08-center-row{
    margin-top: 18px;
    display:grid;
    grid-template-columns: 1fr 1fr;
    gap: 14px;
}
.l08-mid{
    text-decoration:none;
    color:inherit;
    background:#0f1014;
    border:1px solid rgba(255,255,255,.08);
    overflow:hidden;
}
.l08-mid-media{
    height: 150px;
    background-size: cover;
    background-position:center;
}
.l08-mid-body{ padding: 12px; }
.l08-mid-title{ font-weight: 800; line-height: 1.15; }

/* RIGHT picks */
.l08-right{
    background:#0f1014;
    border:1px solid rgba(255,255,255,.08);
    padding: 12px;
    display:flex;
    flex-direction:column;
    gap: 10px;
}
.l08-right-title{
    font-weight: 900;
    font-size: 18px;
    letter-spacing:.2px;
}
.l08-picks{ display:flex; flex-direction:column; gap: 10px; }
.l08-pick{
    display:grid;
    grid-template-columns: 74px 1fr;
    gap: 10px;
    text-decoration:none;
    color:inherit;
    padding: 8px;
    border:1px solid rgba(255,255,255,.06);
    background: rgba(0,0,0,.20);
}
.l08-pick-thumb{
    height: 54px;
    background-size: cover;
    background-position:center;
}
.l08-pick-kicker{
    font-size: 11px;
    color: rgba(120, 255, 200, .9);
    font-weight: 800;
    letter-spacing:.3px;
}
.l08-pick-title{ font-weight: 800; line-height: 1.15; margin-top: 2px; }
.l08-pick-author{ font-size: 11px; color: rgba(120, 255, 200, .8); font-weight: 800; margin-top: 4px; }
.l08-right-more{ margin-top: 6px; color: rgba(255,255,255,.85); text-decoration:none; }
.l08-right-more:hover{ color:#fff; }

/* LIST */
.l08-pagehead{ margin: 18px 0 14px; }
.l08-h1{ font-size: 34px; margin:0 0 10px; font-weight: 900; }
.l08-h2{ font-size: 18px; margin: 18px 0 10px; font-weight: 900; }

.l08-list{ display:flex; flex-direction:column; gap: 12px; }
.l08-list-item{
    display:grid;
    grid-template-columns: 220px 1fr;
    gap: 12px;
    text-decoration:none;
    color:inherit;
    background:#0f1014;
    border:1px solid rgba(255,255,255,.08);
}
.l08-list-thumb{
    height: 140px;
    background-size: cover;
    background-position:center;
}
.l08-list-body{ padding: 12px; }
.l08-list-title{ font-weight: 900; font-size: 20px; line-height: 1.1; }
.l08-list-excerpt{ margin-top: 8px; }

/* POST */
.l08-post-grid{
    margin-top: 18px;
    display:grid;
    grid-template-columns: minmax(0, 1fr) 300px;
    gap: 18px;
}
.l08-article{
    background:#0f1014;
    border:1px solid rgba(255,255,255,.08);
    padding: 16px;
}
.l08-article-title{ margin:0; font-size: 34px; line-height:1.05; font-weight: 900; }
.l08-article-cover{
    margin-top: 14px;
    height: 360px;
    background-size: cover;
    background-position:center;
    border:1px solid rgba(255,255,255,.08);
}
.l08-body{ margin-top: 14px; color: rgba(255,255,255,.88); }
.l08-body a{ color: rgba(255,255,255,.92); }
.l08-body blockquote{ border-left: 3px solid rgba(120,255,200,.65); padding-left: 12px; margin-left: 0; color: rgba(255,255,255,.78); }
.l08-tags a{ color: rgba(255,255,255,.9); text-decoration:none; }

.l08-post-side{
    background:#0f1014;
    border:1px solid rgba(255,255,255,.08);
    padding: 12px;
}

/* Pagination */
.l08-pagination{
    display:flex;
    align-items:center;
    justify-content:space-between;
    margin-top: 16px;
    padding: 12px;
    background:#0f1014;
    border:1px solid rgba(255,255,255,.08);
}
.l08-pagebtn{
    padding: 10px 12px;
    border: 1px solid rgba(255,255,255,.14);
    background: rgba(255,255,255,.06);
    color:#fff;
    text-decoration:none;
}
.l08-pagebtn.is-disabled{ opacity:.4; pointer-events:none; }
.l08-pagenum{ color: rgba(255,255,255,.70); }

/* Burger behavior like our previous fix */
.l08-topnav-mobile{ display:none; }
.l08-nav-toggle{ display:none; }

@media (max-width: 980px){
    .l08-grid{ grid-template-columns: 1fr; }
    .l08-center-row{ grid-template-columns: 1fr; }
    .l08-post-grid{ grid-template-columns: 1fr; }
}

@media (max-width: 820px){
    .topnav-desktop{ display:none; }
    .l08-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); }
    .l08-nav-toggle svg line{ stroke: rgba(255,255,255,.8); stroke-width:2; }

    .l08-topnav-mobile{
        display:none;
        padding:10px 16px;
        background: rgba(0,0,0,.65);
        border-top: 1px solid rgba(255,255,255,.06);
        border-bottom: 1px solid rgba(255,255,255,.06);
    }
    .l08-topnav-mobile a{
        display:block;
        padding:10px 0;
        border-top:1px solid rgba(255,255,255,.06);
        color: rgba(255,255,255,.9);
    }
    .l08-topnav-mobile a:first-child{ border-top:none; }

    .l08-topnav-mobile[data-open="true"]{ display:block; }
}
