/* Fonts */
.plb-root { font-family: 'Lato', system-ui, -apple-system, 'Segoe UI', Roboto, 'Helvetica Neue', Arial; color: #222; }

/* header */
.plb-header { position: sticky; top: 0; z-index: 9999; background: #fff; padding: 10px 0; }
.plb-cat-wrap { display:flex; align-items:center; gap:10px; width:100%; max-width:100vw; padding:8px 18px; box-sizing:border-box; }
.plb-cat-scroll { overflow-x:auto; white-space:nowrap; -webkit-overflow-scrolling:touch; flex:1; }
.plb-cat-item { display:inline-block; margin-right:12px; padding:8px 14px; border-radius:30px; background:#f8f9fa; color:#222; text-decoration:none; font-weight:600; font-family:'Poppins',system-ui; }
.plb-cat-item:hover { background:#e9ecef; transform:translateY(-2px); transition:all .25s ease; }
.plb-cat-arrow { background:transparent; border:1px solid #e9ecef; border-radius:8px; padding:6px 10px; cursor:pointer; }

/* fullwidth section */
.plb-fullwidth { width:100vw; margin-left: calc(50% - 50vw); margin-right: calc(50% - 50vw); padding:40px 0; }
.plb-inner { max-width:1200px; margin:0 auto; padding:0 20px; box-sizing:border-box; }

.plb-h { font-family:'Poppins',sans-serif; font-size:28px; margin-bottom:18px; color:#111; }

/* card */
.plb-card { background:#fff; border-radius:12px; overflow:hidden; box-shadow:0 8px 24px rgba(17,17,17,0.06); display:flex; flex-direction:column; height:100%; transition:transform .25s ease, box-shadow .25s ease; }
.plb-card:hover { transform:translateY(-6px); box-shadow:0 18px 40px rgba(17,17,17,0.12); }
.plb-card-media { height:220px; background-size:cover; background-position:center; }
.plb-card-body { padding:16px; display:flex; flex-direction:column; flex:1; }
.plb-card-title { font-family:'Poppins',sans-serif; font-size:18px; margin:0 0 8px 0; }
.plb-meta { margin-bottom:8px; }
.plb-excerpt { flex:1; color:#555; }
.plb-cta { display:inline-block; margin-top:12px; padding:8px 12px; background:#0d6efd; color:#fff; border-radius:8px; text-decoration:none; font-weight:600; }

/* alternate backgrounds */
.plb-alt { background: linear-gradient(180deg,#fbfbfd,#f8f9fb); }

/* movie section */
.plb-movie { background:#f2f3f5; }
.plb-movie .plb-card-media { height:300px; }

/* latest masonry - simple */
.plb-grid .col-lg-4 { display:flex; }

/* pagination */
.plb-pagination { display:flex; justify-content:center; }

/* responsive tweaks */
@media (max-width:991px) {
    .plb-card-media { height:180px; }
    .plb-h { font-size:22px; }
}
@media (max-width:575px) {
    .plb-card-media { height:140px; }
    .plb-inner { padding:0 12px; }
}
