/*
Theme Name: GeneratePress Child - GoJoBox
Template: generatepress
*/

/* ===== Premium minimal - media bersih ===== */
body {
    font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Helvetica, Arial, sans-serif;
    color: #1f2937;
    background: #ffffff;
    font-size: 17px;
    line-height: 1.6;
}

.site {
    border-top:  3px solid #c62828;
}

.site-header {
    border-bottom:  1px solid #e8ecf1;
}

.inside-header {
    padding-top:  20px;
    padding-bottom:  20px;
}

.site-title,
.site-logo {
    font-weight: 800;
    font-size:  1.6rem;
    letter-spacing: -0.02em;
}

.entry-title {
    font-weight: 800;
    letter-spacing: -0.02em;
    line-height:  1.15;
    color: #111827;
}

.single .entry-title {
    font-size:  2.2rem;
}

.entry-summary {
    color: #6b7280;
    font-size:  0.95rem;
    line-height:  1.65;
}

.entry-content {
    font-size:  1.05rem;
    color: #1f2937;
}

.entry-meta {
    font-size:  0.75rem;
    text-transform: uppercase;
    letter-spacing:  0.08em;
    color: #9aa3af;
}

.entry-meta a {
    color: #c62828;
    font-weight: 600;
}

a {
    color: #c62828;
    text-decoration: none;
}

a:hover {
    color: #b91c1c;
    text-decoration: underline;
}

/* Header arsip & halaman */
.separate-containers .page-header,
.separate-containers .paging-navigation {
    border:  0;
    background: transparent;
    padding:  0 0 24px;
    margin-bottom:  24px;
    border-bottom:  1px solid #eef1f6;
}

.separate-containers .page-header h1 {
    font-size:  1.6rem;
    margin:  0;
}

/* Footer minimal */
.site-footer {
    border-top:  1px solid #eef1f6;
    color: #6b7280;
}

.site-footer .site-info {
    font-size:  0.8rem;
    color: #6b7280;
}

/* ===== Ticker Breaking News ===== */
.gj-ticker {
    display: flex;
    align-items: stretch;
    background: #0f172a;
    color: #fff;
    border-radius:  10px;
    overflow: hidden;
    margin: 18px 0 26px;
}

.gj-ticker-label {
    background: #c62828;
    color: #fff;
    font-size:  0.72rem;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing:  0.08em;
    padding: 10px 16px;
    white-space: nowrap;
    display: flex;
    align-items: center;
}

.gj-ticker-wrap {
    display: flex;
    overflow-x: auto;
    scrollbar-width: thin;
}

.gj-ticker-item {
    color: #dbe2ee;
    font-size:  0.88rem;
    padding: 10px 18px;
    white-space: nowrap;
    border-right:  1px solid rgba(255,255,255,0.08);
}

.gj-ticker-item:hover {
    color: #fff;
    text-decoration: none;
}

.gj-ticker-item.is-live {
    color: #fff;
    font-weight: 600;
}

/* ===== Top strip: tanggal + pencarian ===== */
.gj-topstrip {
    display: flex;
    justify-content: space-between;
    align-items: center;
    gap:  16px;
    padding: 8px 0 14px;
    border-bottom:  1px solid #eef1f6;
    margin-bottom:  18px;
}

.gj-topdate {
    font-size:  0.82rem;
    color: #6b7280;
}

.gj-topsearch {
    display: flex;
    gap:  8px;
}

.gj-topsearch input[type="search"] {
    border:  1px solid #e3e8ef;
    border-radius:  8px;
    padding: 7px 12px;
    font-size:  0.9rem;
    min-width:  240px;
}

.gj-topsearch button {
    background: #c62828;
    color: #fff;
    border:  0;
    border-radius:  8px;
    padding: 7px 16px;
    font-size:  0.9rem;
    font-weight:  600;
    cursor:  pointer;
}

/* ===== Baris kategori (pola Media Kampung) ===== */
.gj-catbar {
    display: flex;
    flex-wrap: wrap;
    gap: 4px 24px;
    padding: 10px 0 14px;
    border-bottom:  1px solid #eef1f6;
    margin-bottom:  16px;
}

.gj-catbar-item {
    font-size:  0.82rem;
    font-weight: 600;
    text-transform: uppercase;
    letter-spacing:  0.04em;
    color: #374151;
}

.gj-catbar-item:hover {
    color: #c62828;
    text-decoration: none;
}

/* ===== HEADLINE NEWS (pola Media Kampung) ===== */
.gj-head-news {
    position: relative;
    background: #ffffff;
    border-radius:  10px;
    box-shadow:  0 0.125rem 0.25rem rgba(0,0,0,0.075);
    overflow: hidden;
    margin-bottom:  34px;
}

.gj-hn-header {
    position: absolute;
    top:  20px;
    left:  -8px;
    z-index:  9;
    padding: 6px 20px 4px 30px;
    font-size:  13px;
    font-weight:  600;
    text-transform: uppercase;
    color: #ffffff;
}

.gj-hn-header:before {
    content: "";
    position: absolute;
    z-index:  -1;
    top:  0;
    right:  0;
    bottom:  0;
    left:  0;
    display: block;
    border-radius:  5px;
    background-color: #c62828;
    transform: skewX(-25deg);
}

.gj-hn-content {
    display: flex;
    align-items: stretch;
}

/* cerita utama (kiri) */
.gj-hn-big {
    position: relative;
    width:  100%;
    min-width:  0;
}

.gj-hn-img {
    display: block;
    position: relative;
    height:  0;
    padding-bottom:  57%;
    overflow: hidden;
    background: linear-gradient(135deg, #c62828 0%, #7f1d1d 100%);
}

.gj-hn-img img {
    position: absolute;
    inset:  0;
    width:  100%;
    height:  100%;
    object-fit: cover;
}

.gj-hn-ph {
    position: absolute;
    inset:  0;
    display: flex;
    align-items: center;
    justify-content: center;
    color: rgba(255,255,255,0.9);
    font-size:  5rem;
    font-weight:  800;
}

.gj-hn-text {
    position: absolute;
    top:  0;
    left:  0;
    right:  0;
    bottom:  0;
    display: flex;
    flex-wrap: wrap;
    align-content: flex-end;
    justify-content: flex-start;
    padding: 160px 20px 30px;
    background: linear-gradient(90deg, #181818 0%, transparent 100%);
}

.gj-hn-cat {
    display: inline-flex;
    font-size:  12px;
    color: #ffffff;
    text-transform: uppercase;
    letter-spacing:  2.4px;
    border-bottom:  2px solid #f39c12;
    margin-bottom:  12px;
}

.gj-hn-title {
    width:  100%;
    margin:  0;
    font-size:  24px;
    font-weight:  600;
    line-height:  1.2;
    color: #ffffff;
    display: -webkit-box;
    -webkit-line-clamp:  3;
    -webkit-box-orient: vertical;
    overflow: hidden;
}

.gj-hn-title a {
    color: #ffffff;
}

.gj-hn-title a:hover {
    color: #ffd54f;
    text-decoration: none;
}

.gj-hn-date {
    width:  100%;
    font-size:  11px;
    color: #cccccc;
    margin-top:  10px;
    letter-spacing:  0.2px;
}

/* kolom kecil (kanan) */
.gj-hn-small {
    flex:  1;
    min-width:  0;
    background: #ffffff;
    padding:  6px 5px 5px;
    display: flex;
    flex-direction: column;
}

.gj-hn-item {
    padding:  4px 5px 10px;
}

.gj-hn-iimg {
    display: block;
    position: relative;
    height:  0;
    padding-bottom:  56%;
    overflow: hidden;
    border-radius:  7px;
    background: linear-gradient(135deg, #c62828 0%, #7f1d1d 100%);
}

.gj-hn-iimg img {
    position: absolute;
    inset:  0;
    width:  100%;
    height:  100%;
    object-fit: cover;
}

.gj-hn-iph {
    position: absolute;
    inset:  0;
    display: flex;
    align-items: center;
    justify-content: center;
    color: rgba(255,255,255,0.9);
    font-size:  2rem;
    font-weight:  800;
}

.gj-hn-ittl {
    margin:  0;
    padding-top:  10px;
    font-size:  13px;
    font-weight:  600;
    line-height:  1.35;
    display: -webkit-box;
    -webkit-line-clamp:  3;
    -webkit-box-orient: vertical;
    overflow: hidden;
}

.gj-hn-ittl a {
    color: #444444;
}

.gj-hn-ittl a:hover {
    color: #c62828;
    text-decoration: none;
}

.gj-reltime {
    display: inline-block;
    font-size:  0.75rem;
    color: #9aa3af;
    text-transform: uppercase;
    letter-spacing:  0.06em;
}

/* ===== Media box grid ===== */
.gj-mbox-grid {
    display: grid;
    grid-template-columns: repeat(4,1fr);
    gap:  20px;
}

.gj-mbox {
    border-radius:  10px;
    overflow: hidden;
    background: #ffffff;
    box-shadow:  0 0.125rem 0.25rem rgba(0,0,0,0.075);
    transition: transform 0.15s ease, box-shadow 0.15s ease;
}

.gj-mbox:hover {
    transform: translateY(-2px);
    box-shadow:  0 0.3rem 0.6rem rgba(0,0,0,0.1);
}

.gj-mbox-img {
    display: block;
    aspect-ratio: 16 / 9;
    background: linear-gradient(135deg, #c62828 0%, #7f1d1d 100%);
    overflow: hidden;
}

.gj-mbox-img img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.gj-mbox-ph {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 100%;
    height: 100%;
    color: rgba(255,255,255,0.9);
    font-size:  3.2rem;
    font-weight: 800;
}

.gj-mbox:nth-child(3n+2) .gj-mbox-img {
    background: linear-gradient(135deg, #b91c1c 0%, #7f1d1d 100%);
}

.gj-mbox:nth-child(3n+3) .gj-mbox-img {
    background: linear-gradient(135deg, #991b1b 0%, #5f1515 100%);
}

.gj-mbox-body {
    padding:  12px 14px 16px;
}

.gj-mbox-cat {
    display: inline-block;
    font-size:  0.7rem;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing:  0.08em;
    color: #c62828;
    margin-bottom:  8px;
}

.gj-mbox-title {
    font-size:  1.02rem;
    font-weight: 700;
    line-height:  1.35;
    margin: 0 0 8px;
    display: -webkit-box;
    -webkit-line-clamp:  3;
    -webkit-box-orient: vertical;
    overflow: hidden;
}

.gj-mbox-title a {
    color: #111827;
}

.gj-mbox-title a:hover {
    color: #c62828;
    text-decoration: none;
}

.gj-mbox-date {
    font-size:  0.78rem;
    color: #9aa3af;
    margin-bottom:  8px;
}

.gj-mbox-body p {
    font-size:  0.9rem;
    color: #6b7280;
    line-height:  1.6;
    margin: 0;
}

/* ===== Section kartu (pola Media Kampung) ===== */
.gj-card {
    background: #ffffff;
    border-radius:  10px;
    box-shadow:  0 0.125rem 0.25rem rgba(0,0,0,0.075);
    padding:  20px 22px;
    margin-bottom:  26px;
    overflow: hidden;
}

.gj-sec-head {
    display: flex;
    align-items: center;
    margin-bottom:  16px;
}

.gj-sec-head span {
    font-size:  15px;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing:  0.02em;
    color: #111827;
    padding-left:  12px;
    border-left:  4px solid #c62828;
    line-height:  1.2;
}

.gj-sec-head a:hover {
    text-decoration: none;
}

/* Berita Terkini (indeks) */
.gj-indeks-row {
    display: flex;
    align-items: flex-start;
    gap:  14px;
    padding:  11px 0;
    border-bottom:  1px solid #f0f2f6;
}

.gj-indeks-row:last-child {
    border-bottom:  0;
}

.gj-indeks-no {
    font-size:  1.05rem;
    font-weight: 800;
    color: #c62828;
    min-width:  26px;
    line-height:  1.3;
}

.gj-indeks-title {
    margin:  0 0 4px;
    font-size:  1rem;
    font-weight: 600;
    line-height:  1.35;
}

.gj-indeks-title a {
    color: #111827;
}

.gj-indeks-title a:hover {
    color: #c62828;
    text-decoration: none;
}

.gj-indeks-meta {
    display: flex;
    align-items: center;
    gap:  10px;
}

.gj-indeks-cat {
    font-size:  0.68rem;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing:  0.08em;
    color: #c62828;
}

/* Topik Terpopuler */
.gj-tags-wrap {
    display: flex;
    flex-wrap: wrap;
    gap:  8px;
}

.gj-tag {
    display: inline-block;
    font-size:  0.8rem;
    font-weight: 600;
    color: #374151;
    background: #f3f4f6;
    border-radius:  20px;
    padding: 6px 14px;
}

.gj-tag:hover {
    background: #c62828;
    color: #ffffff;
    text-decoration: none;
}

/* Section list per kategori */
.gj-list-row {
    display: flex;
    align-items: center;
    gap:  14px;
    padding:  10px 0;
    border-bottom:  1px solid #f0f2f6;
}

.gj-list-row:last-child {
    border-bottom:  0;
}

.gj-list-thumb {
    display: block;
    flex:  0 0 96px;
    width:  96px;
    height:  64px;
    border-radius:  7px;
    overflow: hidden;
    background: linear-gradient(135deg, #c62828 0%, #7f1d1d 100%);
}

.gj-list-thumb img {
    width:  100%;
    height:  100%;
    object-fit: cover;
}

.gj-list-ph {
    display: flex;
    align-items: center;
    justify-content: center;
    width:  100%;
    height:  100%;
    color: rgba(255,255,255,0.9);
    font-size:  1.3rem;
    font-weight: 800;
}

.gj-list-title {
    margin:  0 0 4px;
    font-size:  0.95rem;
    font-weight: 600;
    line-height:  1.35;
    display: -webkit-box;
    -webkit-line-clamp:  2;
    -webkit-box-orient: vertical;
    overflow: hidden;
}

.gj-list-title a {
    color: #111827;
}

.gj-list-title a:hover {
    color: #c62828;
    text-decoration: none;
}

/* ===== Sidebar ===== */
.gj-home-side .widget {
    border:  1px solid #eef1f6;
    border-radius:  12px;
    padding:  20px;
    margin-bottom:  24px;
    background: #ffffff;
}

.gj-home-side .widget-title {
    font-size:  1.05rem;
    font-weight: 800;
    margin: 0 0 16px;
    padding-bottom:  10px;
    border-bottom:  1px solid #eef1f6;
}

.gj-home-side ul {
    margin: 0;
    padding: 0;
    list-style: none;
}

.gj-home-side ul li {
    padding: 7px 0;
    border-bottom:  1px solid #f4f6f9;
    font-size:  0.92rem;
}

.gj-home-side ul li:last-child {
    border-bottom: 0;
}

/* ===== Responsif ===== */
@media (max-width: 1024px) {
    .gj-mbox-grid {
        grid-template-columns: repeat(3,1fr);
    }
}

@media (max-width: 860px) {
    .gj-mbox-grid {
        grid-template-columns: repeat(2,1fr);
    }

    .gj-topstrip {
        flex-direction: column;
        align-items: stretch;
    }

    .gj-topsearch input[type="search"] {
        min-width:  0;
        flex: 1;
    }

    .gj-ticker-wrap {
        flex-wrap: wrap;
    }

    .gj-ticker-item {
        white-space: normal;
        border-bottom:  1px solid rgba(255,255,255,0.08);
    }
}

@media (max-width: 640px) {
    .gj-mbox-grid {
        grid-template-columns: 1fr;
    }
}

/* ===== Featured (pola AutoDrive) ===== */
.gj-feat {
    background: #ffffff;
    border-radius:  10px;
    box-shadow:  0 0.125rem 0.25rem rgba(0,0,0,0.075);
    overflow: hidden;
    margin-bottom:  26px;
}

.gj-feat-img {
    display: block;
    position: relative;
    height:  0;
    padding-bottom:  52%;
    overflow: hidden;
    background: linear-gradient(135deg, #c62828 0%, #7f1d1d 100%);
}

.gj-feat-img img {
    position: absolute;
    inset:  0;
    width:  100%;
    height:  100%;
    object-fit: cover;
}

.gj-feat-ph {
    position: absolute;
    inset:  0;
    display: flex;
    align-items: center;
    justify-content: center;
    color: rgba(255,255,255,0.9);
    font-size:  5rem;
    font-weight:  800;
}

.gj-feat-body {
    padding:  22px 26px 26px;
}

.gj-feat-cat {
    display: inline-block;
    font-size:  0.72rem;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing:  0.1em;
    color: #c62828;
    border-bottom:  2px solid #f39c12;
    margin-bottom:  10px;
}

.gj-feat-title {
    margin:  0 0 10px;
    font-size:  1.7rem;
    font-weight: 800;
    line-height:  1.2;
    letter-spacing:  -0.01em;
}

.gj-feat-title a {
    color: #111827;
}

.gj-feat-title a:hover {
    color: #c62828;
    text-decoration: none;
}

.gj-feat-excerpt {
    margin:  0 0 10px;
    font-size:  0.98rem;
    color: #4b5563;
    line-height:  1.6;
}

.gj-feat-meta {
    font-size:  0.78rem;
    color: #9aa3af;
}

/* ===== Featured grid: 3 cerita utama ===== */
.gj-feat-grid {
    display: grid;
    grid-template-columns: repeat(3,1fr);
    gap:  26px;
    margin-bottom:  26px;
}

.gj-feat-grid .gj-feat-img {
    padding-bottom:  57%;
}

.gj-feat-grid .gj-feat-body {
    padding:  16px 18px 20px;
}

.gj-feat-grid .gj-feat-title {
    font-size:  1.12rem;
    font-weight: 700;
    line-height:  1.3;
    display: -webkit-box;
    -webkit-line-clamp:  2;
    -webkit-box-orient: vertical;
    overflow: hidden;
}

.gj-feat-grid .gj-feat-excerpt {
    font-size:  0.88rem;
    display: -webkit-box;
    -webkit-line-clamp:  3;
    -webkit-box-orient: vertical;
    overflow: hidden;
}

.gj-feat-grid .gj-feat-meta {
    font-size:  0.72rem;
}

@media (max-width: 1024px) {
    .gj-feat-grid {
        grid-template-columns: repeat(2,1fr);
    }
}

@media (max-width: 640px) {
    .gj-feat-grid {
        grid-template-columns: 1fr;
    }
}

/* ===== Featured hero: 1 besar + slider 3 ===== */
.gj-feat-hero {
    display: grid;
    grid-template-columns: 2fr 1fr;
    gap:  26px;
    margin-bottom:  26px;
    align-items: stretch;
}

.gj-feat-big .gj-feat-img {
    padding-bottom:  57%;
}

.gj-feat-big .gj-feat-title {
    font-size:  1.45rem;
}

.gj-slider {
    background: #ffffff;
    border-radius:  10px;
    box-shadow:  0 0.125rem 0.25rem rgba(0,0,0,0.075);
    overflow: hidden;
}

.gj-slide {
    display: flex;
    flex-direction: column;
    border-bottom:  1px solid #f0f2f6;
}

.gj-slide:last-child {
    border-bottom:  0;
}

.gj-slide-img {
    display: block;
    position: relative;
    padding-bottom:  55%;
    overflow: hidden;
    background: linear-gradient(135deg, #c62828 0%, #7f1d1d 100%);
}

.gj-slide-img img {
    position: absolute;
    inset:  0;
    width:  100%;
    height:  100%;
    object-fit: cover;
}

.gj-slide-ph {
    position: absolute;
    inset:  0;
    display: flex;
    align-items: center;
    justify-content: center;
    color: rgba(255,255,255,0.9);
    font-size:  2.2rem;
    font-weight:  800;
}

.gj-slide-body {
    padding:  14px 16px;
}

.gj-slide-cat {
    display: inline-block;
    font-size:  0.66rem;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing:  0.08em;
    color: #c62828;
    margin-bottom:  4px;
}

.gj-slide-title {
    margin:  0 0 6px;
    font-size:  0.95rem;
    font-weight: 600;
    line-height:  1.35;
    display: -webkit-box;
    -webkit-line-clamp:  3;
    -webkit-box-orient: vertical;
    overflow: hidden;
}

.gj-slide-title a {
    color: #111827;
}

.gj-slide-title a:hover {
    color: #c62828;
    text-decoration: none;
}

.gj-slider-dots {
    position: absolute;
    bottom:  10px;
    right:  14px;
    display: flex;
    gap:  6px;
    z-index:  5;
}

.gj-dot {
    width:  8px;
    height:  8px;
    border-radius:  50%;
    border:  0;
    background: #d1d5db;
    cursor:  pointer;
    padding:  0;
}

.gj-dot.is-on {
    background: #c62828;
}

@media (max-width: 1024px) {
    .gj-feat-hero {
        grid-template-columns: 1fr;
    }
}

/* ===== Main + sidebar ===== */
.gj-main-wrap {
    display: flex;
    gap:  26px;
    align-items: flex-start;
}

.gj-main {
    flex:  2;
    min-width:  0;
}

.gj-side {
    flex:  1;
    min-width:  0;
    display: flex;
    flex-direction: column;
    gap:  26px;
}

.gj-cols {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap:  26px;
    margin-bottom:  26px;
}

.gj-col {
    background: #ffffff;
    border-radius:  10px;
    box-shadow:  0 0.125rem 0.25rem rgba(0,0,0,0.075);
    padding:  18px 20px;
}

.gj-litem {
    padding:  12px 0;
    border-bottom:  1px solid #f0f2f6;
}

.gj-litem:last-child {
    border-bottom:  0;
}

.gj-litem-cat {
    display: inline-block;
    font-size:  0.66rem;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing:  0.08em;
    color: #c62828;
    margin-bottom:  4px;
}

.gj-litem-title {
    margin:  0 0 4px;
    font-size:  0.95rem;
    font-weight: 600;
    line-height:  1.35;
    display: -webkit-box;
    -webkit-line-clamp:  2;
    -webkit-box-orient: vertical;
    overflow: hidden;
}

.gj-litem-title a {
    color: #111827;
}

.gj-litem-title a:hover {
    color: #c62828;
    text-decoration: none;
}

.gj-litem-date {
    font-size:  0.72rem;
    color: #9aa3af;
}

/* TOP 10 */
.gj-top10 {
    background: #ffffff;
    border-radius:  10px;
    box-shadow:  0 0.125rem 0.25rem rgba(0,0,0,0.075);
    padding:  18px 20px;
    margin-bottom:  26px;
}

.gj-top10-row {
    display: flex;
    align-items: flex-start;
    gap:  12px;
    padding:  9px 0;
    border-bottom:  1px solid #f0f2f6;
}

.gj-top10-row:last-child {
    border-bottom:  0;
}

.gj-top10-no {
    font-size:  1rem;
    font-weight: 800;
    color: #c62828;
    min-width:  22px;
    line-height:  1.3;
}

.gj-top10-body {
    min-width:  0;
}

.gj-top10-title {
    margin:  0 0 3px;
    font-size:  0.9rem;
    font-weight: 600;
    line-height:  1.35;
    display: -webkit-box;
    -webkit-line-clamp:  2;
    -webkit-box-orient: vertical;
    overflow: hidden;
}

.gj-top10-title a {
    color: #111827;
}

.gj-top10-title a:hover {
    color: #c62828;
    text-decoration: none;
}

.gj-top10-row.is-compact {
    align-items: center;
}

/* Sidebar widget */
.gj-widget {
    margin-bottom:  0;
}

.gj-catrow {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding:  9px 0;
    border-bottom:  1px solid #f0f2f6;
    font-size:  0.9rem;
    font-weight: 600;
    color: #374151;
}

.gj-catrow:last-child {
    border-bottom:  0;
}

.gj-catrow:hover {
    color: #c62828;
    text-decoration: none;
}

.gj-catrow-count {
    font-size:  0.75rem;
    font-weight: 700;
    color: #9aa3af;
    background: #f3f4f6;
    border-radius:  10px;
    padding: 2px 9px;
}

.gj-news-text {
    font-size:  0.88rem;
    color: #4b5563;
    margin:  0 0 12px;
}

.gj-news-form {
    display: flex;
    flex-direction: column;
    gap:  8px;
}

.gj-news-form input[type="email"] {
    border:  1px solid #e3e8ef;
    border-radius:  8px;
    padding: 9px 12px;
    font-size:  0.9rem;
}

.gj-news-form button {
    background: #c62828;
    color: #fff;
    border:  0;
    border-radius:  8px;
    padding: 10px 14px;
    font-size:  0.9rem;
    font-weight:  600;
    cursor:  pointer;
}

/* Responsif baru */
@media (max-width: 1024px) {
    .gj-main-wrap {
        flex-direction: column;
    }

    .gj-side {
        flex-direction: row;
        flex-wrap: wrap;
    }

    .gj-side .gj-widget {
        flex:  1;
        min-width:  240px;
    }
}

@media (max-width: 640px) {
    .gj-cols {
        grid-template-columns: 1fr;
    }

    .gj-feat-title {
        font-size:  1.3rem;
    }
}

/* ===== Arsip & halaman kategori ===== */
.separate-containers .site-main > article {
    background: #ffffff;
    border-radius:  10px;
    box-shadow:  0 0.125rem 0.25rem rgba(0,0,0,0.075);
    padding:  22px 26px;
    margin-bottom:  18px;
}

.separate-containers .site-main > article .entry-title {
    font-size:  1.35rem;
}

.separate-containers .site-main > article .entry-title a {
    color: #111827;
}

.separate-containers .site-main > article .entry-title a:hover {
    color: #c62828;
    text-decoration: none;
}

/* ===== Halaman artikel (single) ===== */
.single .site-main > article {
    background: #ffffff;
    border-radius:  10px;
    box-shadow:  0 0.125rem 0.25rem rgba(0,0,0,0.075);
    padding:  26px 30px;
}

.single .post-image img {
    border-radius:  8px;
}

.single .entry-content {
    max-width:  760px;
}

/* ===== Footer kolom ===== */
.site-footer .footer-widgets {
    border-top:  1px solid #eef1f6;
    padding:  30px 0;
}

.site-footer .footer-widgets .widget-title {
    font-size:  0.85rem;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing:  0.06em;
    color: #111827;
    margin-bottom:  12px;
}

.site-footer .footer-widgets ul {
    list-style: none;
    margin: 0;
    padding: 0;
}

.site-footer .footer-widgets li {
    margin-bottom:  7px;
}

.site-footer .footer-widgets a {
    color: #4b5563;
    font-size:  0.9rem;
}

.site-footer .footer-widgets a:hover {
    color: #c62828;
    text-decoration: none;
}

.site-footer .site-info {
    border-top:  1px solid #eef1f6;
    padding-top:  14px;
}

/* ===== Beranda kosong ===== */
.gj-empty {
    background: #ffffff;
    border-radius:  10px;
    box-shadow:  0 0.125rem 0.25rem rgba(0,0,0,0.075);
    padding:  60px 32px;
    text-align:  center;
    margin-bottom:  26px;
}

.gj-empty h2 {
    margin:  0 0 10px;
    font-size:  1.4rem;
    color: #111827;
}

.gj-empty p {
    margin:  0;
    color: #6b7280;
}