/*
Theme Name: Nalar Hukum
Theme URI: https://nalarhukum.id
Author: Nalar Hukum
Author URI: https://nalarhukum.id
Description: Tema WordPress elegan dan profesional untuk portal berita & literasi hukum bisnis. Palet hijau zaitun & krem, fokus pada keterbacaan, dengan hero headline, kategori, berita terpopuler, segmen literasi evergreen, profil penulis, newsletter, dan CTA konsultasi hukum. Ringan, responsif, dan SEO-friendly.
Version: 1.0.0
Requires at least: 6.0
Tested up to: 6.6
Requires PHP: 7.4
License: GNU General Public License v2 or later
License URI: http://www.gnu.org/licenses/gpl-2.0.html
Text Domain: nalarhukum
Tags: blog, news, two-columns, right-sidebar, custom-menu, custom-logo, featured-images, threaded-comments, translation-ready, editor-style
*/

:root{
  --nh-olive-900:#0E2034; --nh-olive-800:#16314F; --nh-olive-700:#1E3E63;
  --nh-olive-600:#24517F; --nh-olive-500:#2F6195; --nh-sage:#6E8CB0; --nh-sage-soft:#A7BCD6;
  --nh-cream:#F7F9FC; --nh-cream-2:#EDF1F7; --nh-card:#FFFFFF; --nh-white:#FFFFFF;
  --nh-gold:#B98A3C; --nh-gold-dark:#9A6F2C; --nh-terracotta:#B5663A;
  --nh-ink:#1A2433; --nh-ink-soft:#46536A; --nh-muted-2:#6C788C;
  --nh-border:#E3E8F0; --nh-border-2:#CDD6E3;
  --nh-font-head:"Plus Jakarta Sans", "Segoe UI", Roboto, Helvetica, Arial, sans-serif;
  --nh-font-body:"Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Helvetica, Arial, sans-serif;
  --nh-wrap:1200px; --nh-wrap-narrow:760px; --nh-radius:10px; --nh-radius-lg:16px;
  --nh-shadow:0 1px 2px rgba(15,34,56,.04), 0 8px 24px rgba(15,34,56,.06);
  --nh-shadow-lg:0 10px 40px rgba(15,34,56,.12); --nh-transition:.25s ease;
}

*,*::before,*::after{box-sizing:border-box;}
html{-webkit-text-size-adjust:100%;scroll-behavior:smooth;}
body{margin:0;font-family:var(--nh-font-body);font-size:17px;line-height:1.7;color:var(--nh-ink);background:var(--nh-cream);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;}
img{max-width:100%;height:auto;display:block;}
a{color:var(--nh-olive-700);text-decoration:none;transition:color var(--nh-transition);}
a:hover{color:var(--nh-gold-dark);}
h1,h2,h3,h4,h5,h6{font-family:var(--nh-font-head);color:var(--nh-olive-900);line-height:1.22;margin:0 0 .5em;font-weight:700;}
p{margin:0 0 1.2em;}
ul,ol{margin:0 0 1.2em;padding-left:1.4em;}
blockquote{margin:1.6em 0;padding:.4em 1.4em;border-left:4px solid var(--nh-sage);font-family:var(--nh-font-head);font-style:italic;font-size:1.15em;color:var(--nh-olive-800);background:var(--nh-cream-2);border-radius:0 var(--nh-radius) var(--nh-radius) 0;}
code,pre{font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;background:var(--nh-cream-2);border-radius:6px;}
code{padding:.15em .4em;font-size:.9em;}
pre{padding:1em;overflow:auto;}
hr{border:0;border-top:1px solid var(--nh-border);margin:2em 0;}
table{width:100%;border-collapse:collapse;margin:0 0 1.5em;}
th,td{border:1px solid var(--nh-border);padding:.65em .8em;text-align:left;}
th{background:var(--nh-cream-2);font-family:var(--nh-font-body);font-weight:600;}

.nh-wrap{max-width:var(--nh-wrap);margin:0 auto;padding:0 24px;}
.nh-narrow{max-width:var(--nh-wrap-narrow);margin:0 auto;padding:0 24px;}
.nh-section{padding:56px 0;}
.nh-section--alt{background:var(--nh-cream-2);}
.screen-reader-text{position:absolute !important;clip:rect(1px,1px,1px,1px);width:1px;height:1px;overflow:hidden;word-wrap:normal !important;}
.skip-link{position:absolute;left:-9999px;top:0;background:var(--nh-olive-700);color:#fff;padding:10px 16px;z-index:1000;border-radius:0 0 8px 0;}
.skip-link:focus{left:0;color:#fff;}
.nh-section-head{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:28px;flex-wrap:wrap;}
.nh-section-title{font-size:1.6rem;margin:0;position:relative;padding-left:16px;}
.nh-section-title::before{content:"";position:absolute;left:0;top:.18em;bottom:.18em;width:5px;border-radius:3px;background:linear-gradient(var(--nh-olive-600),var(--nh-sage));}
.nh-section-more{font-family:var(--nh-font-body);font-size:.92rem;font-weight:600;color:var(--nh-olive-700);}
.nh-section-more::after{content:" \2192";}

.nh-btn{display:inline-block;font-family:var(--nh-font-body);font-weight:600;font-size:.95rem;padding:12px 24px;border-radius:8px;border:1px solid transparent;cursor:pointer;transition:all var(--nh-transition);line-height:1.2;text-align:center;}
.nh-btn--primary{background:var(--nh-olive-600);color:#fff;}
.nh-btn--primary:hover{background:var(--nh-olive-800);color:#fff;transform:translateY(-1px);}
.nh-btn--gold{background:var(--nh-gold);color:#fff;}
.nh-btn--gold:hover{background:var(--nh-gold-dark);color:#fff;transform:translateY(-1px);}
.nh-btn--ghost{background:transparent;color:var(--nh-olive-700);border-color:var(--nh-border-2);}
.nh-btn--ghost:hover{background:var(--nh-olive-600);color:#fff;border-color:var(--nh-olive-600);}
.nh-btn--light{background:#fff;color:var(--nh-olive-800);}
.nh-btn--light:hover{background:var(--nh-cream-2);color:var(--nh-olive-900);}
.nh-cat-badge{display:inline-block;font-family:var(--nh-font-body);font-size:.72rem;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:#fff;background:var(--nh-olive-600);padding:4px 11px;border-radius:5px;line-height:1.4;}
.nh-cat-badge:hover{background:var(--nh-gold);color:#fff;}
.nh-cat-badge--light{background:rgba(255,255,255,.18);}

.nh-topbar{background:var(--nh-olive-900);color:#E9E6D8;font-size:.82rem;border-bottom:1px solid rgba(255,255,255,.06);}
.nh-topbar .nh-wrap{display:flex;align-items:center;justify-content:space-between;height:38px;gap:16px;}
.nh-topbar a{color:#D9D6C6;}
.nh-topbar a:hover{color:#fff;}
.nh-topbar__date{display:flex;align-items:center;gap:8px;opacity:.85;}
.nh-topbar__social a{margin-left:14px;font-weight:600;}
.nh-masthead{background:var(--nh-cream);border-bottom:1px solid var(--nh-border);}
.nh-masthead .nh-wrap{display:flex;align-items:center;justify-content:space-between;gap:24px;padding-top:22px;padding-bottom:22px;}
.nh-brand{display:flex;flex-direction:column;gap:2px;}
.nh-brand__title{font-family:var(--nh-font-head);font-size:2rem;font-weight:800;color:var(--nh-olive-900);margin:0;letter-spacing:-.01em;}
.nh-brand__title a{color:inherit;}
.nh-brand__tagline{font-family:var(--nh-font-body);font-size:.82rem;letter-spacing:.04em;text-transform:uppercase;color:var(--nh-muted-2);margin:0;}
.nh-custom-logo-link img{max-height:60px;width:auto;}
.nh-masthead__cta{display:flex;align-items:center;gap:12px;}
.nh-nav{background:var(--nh-olive-800);position:sticky;top:0;z-index:90;box-shadow:0 2px 10px rgba(15,34,56,.12);}
.nh-nav .nh-wrap{display:flex;align-items:center;justify-content:space-between;}
.nh-menu{list-style:none;display:flex;flex-wrap:wrap;margin:0;padding:0;}
.nh-menu li{position:relative;}
.nh-menu a{display:block;color:#EDEAD9;font-family:var(--nh-font-body);font-weight:600;font-size:.93rem;padding:15px 18px;letter-spacing:.01em;}
.nh-menu a:hover,.nh-menu .current-menu-item>a,.nh-menu .current_page_item>a{color:#fff;background:var(--nh-olive-600);}
.nh-menu .sub-menu{position:absolute;left:0;top:100%;min-width:220px;background:var(--nh-olive-800);list-style:none;margin:0;padding:6px 0;box-shadow:var(--nh-shadow-lg);border-radius:0 0 8px 8px;opacity:0;visibility:hidden;transform:translateY(8px);transition:all var(--nh-transition);z-index:95;}
.nh-menu li:hover>.sub-menu{opacity:1;visibility:visible;transform:translateY(0);}
.nh-menu .sub-menu a{padding:10px 18px;font-size:.88rem;}
.nh-menu .sub-menu a:hover{background:var(--nh-olive-600);}
.nh-nav__tools{display:flex;align-items:center;gap:4px;}
.nh-search-toggle,.nh-menu-toggle{background:transparent;border:0;color:#EDEAD9;cursor:pointer;padding:12px;display:flex;align-items:center;}
.nh-search-toggle:hover,.nh-menu-toggle:hover{color:#fff;}
.nh-menu-toggle{display:none;}
.nh-search-panel{display:none;background:var(--nh-olive-700);padding:14px 0;}
.nh-search-panel.is-open{display:block;}
.nh-search-panel form{display:flex;gap:8px;max-width:var(--nh-wrap);margin:0 auto;padding:0 24px;}
.nh-search-panel input[type="search"]{flex:1;padding:12px 16px;border:0;border-radius:8px;font-size:1rem;}
.nh-search-panel button{border:0;background:var(--nh-gold);color:#fff;padding:0 22px;border-radius:8px;font-weight:600;cursor:pointer;}

.nh-hero{padding:40px 0 8px;}
.nh-hero__grid{display:grid;grid-template-columns:1.7fr 1fr;gap:24px;}
.nh-hero__main{position:relative;border-radius:var(--nh-radius-lg);overflow:hidden;min-height:440px;display:flex;align-items:flex-end;box-shadow:var(--nh-shadow);background:var(--nh-olive-800);}
.nh-hero__main img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;}
.nh-hero__main::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(22,49,79,0) 25%,rgba(22,49,79,.55) 60%,rgba(14,32,52,.92) 100%);}
.nh-hero__body{position:relative;z-index:2;padding:34px;color:#fff;}
.nh-hero__title{color:#fff;font-size:2.3rem;margin:.4em 0 .3em;line-height:1.16;}
.nh-hero__title a{color:#fff;}
.nh-hero__title a:hover{color:var(--nh-sage-soft);}
.nh-hero__excerpt{color:#EDEAD9;font-size:1rem;margin:0 0 .6em;max-width:62ch;}
.nh-hero__meta{font-size:.85rem;color:#D5D2C2;display:flex;gap:14px;flex-wrap:wrap;align-items:center;}
.nh-hero__side{display:flex;flex-direction:column;gap:18px;}
.nh-hero__card{position:relative;border-radius:var(--nh-radius);overflow:hidden;min-height:135px;flex:1;display:flex;align-items:flex-end;background:var(--nh-olive-700);box-shadow:var(--nh-shadow);}
.nh-hero__card img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;}
.nh-hero__card::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(22,49,79,0) 30%,rgba(14,32,52,.9) 100%);}
.nh-hero__card-body{position:relative;z-index:2;padding:16px;color:#fff;}
.nh-hero__card-title{font-size:1.02rem;line-height:1.3;margin:.4em 0 0;color:#fff;}
.nh-hero__card-title a{color:#fff;}
.nh-hero__card-title a:hover{color:var(--nh-sage-soft);}

.nh-grid{display:grid;gap:26px;}
.nh-grid--3{grid-template-columns:repeat(3,1fr);}
.nh-grid--2{grid-template-columns:repeat(2,1fr);}
.nh-grid--4{grid-template-columns:repeat(4,1fr);}
.nh-card{background:var(--nh-card);border:1px solid var(--nh-border);border-radius:var(--nh-radius);overflow:hidden;display:flex;flex-direction:column;transition:transform var(--nh-transition),box-shadow var(--nh-transition);}
.nh-card:hover{transform:translateY(-4px);box-shadow:var(--nh-shadow-lg);}
.nh-card__thumb{display:block;aspect-ratio:16/10;overflow:hidden;background:var(--nh-cream-2);}
.nh-card__thumb img{width:100%;height:100%;object-fit:cover;transition:transform .4s ease;}
.nh-card:hover .nh-card__thumb img{transform:scale(1.05);}
.nh-card__body{padding:18px 20px 22px;display:flex;flex-direction:column;gap:10px;flex:1;}
.nh-card__title{font-size:1.18rem;line-height:1.3;margin:0;}
.nh-card__title a{color:var(--nh-olive-900);}
.nh-card__title a:hover{color:var(--nh-gold-dark);}
.nh-card__excerpt{font-size:.92rem;color:var(--nh-ink-soft);margin:0;}
.nh-card__meta{margin-top:auto;font-size:.8rem;color:var(--nh-muted-2);display:flex;gap:12px;align-items:center;flex-wrap:wrap;}
.nh-card__meta a{color:var(--nh-muted-2);font-weight:600;}
.nh-card__meta a:hover{color:var(--nh-olive-700);}
.nh-list-card{display:flex;gap:16px;align-items:flex-start;padding:16px 0;border-bottom:1px solid var(--nh-border);}
.nh-list-card:last-child{border-bottom:0;}
.nh-list-card__thumb{flex:0 0 104px;aspect-ratio:1/1;border-radius:8px;overflow:hidden;background:var(--nh-cream-2);}
.nh-list-card__thumb img{width:100%;height:100%;object-fit:cover;}
.nh-list-card__title{font-size:1rem;line-height:1.32;margin:.2em 0 .35em;}
.nh-list-card__title a{color:var(--nh-olive-900);}
.nh-list-card__meta{font-size:.78rem;color:var(--nh-muted-2);}
.nh-rank{counter-reset:rank;list-style:none;margin:0;padding:0;}
.nh-rank li{display:flex;gap:14px;align-items:flex-start;padding:14px 0;border-bottom:1px dashed var(--nh-border-2);counter-increment:rank;}
.nh-rank li:last-child{border-bottom:0;}
.nh-rank li::before{content:counter(rank);font-family:var(--nh-font-head);font-weight:800;font-size:1.4rem;color:var(--nh-sage);line-height:1;flex:0 0 auto;min-width:30px;}
.nh-rank__title{font-size:.98rem;line-height:1.34;margin:0 0 .25em;}
.nh-rank__title a{color:var(--nh-olive-900);}
.nh-rank__title a:hover{color:var(--nh-gold-dark);}
.nh-rank__meta{font-size:.76rem;color:var(--nh-muted-2);}

.nh-literasi{background:var(--nh-olive-900);color:#EDEAD9;border-radius:var(--nh-radius-lg);padding:44px 40px;}
.nh-literasi .nh-section-title{color:#fff;}
.nh-literasi .nh-section-title::before{background:linear-gradient(var(--nh-gold),var(--nh-sage));}
.nh-literasi__intro{color:#CBC8B6;max-width:60ch;margin:0 0 28px;}
.nh-literasi__grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;}
.nh-literasi__item{background:rgba(255,255,255,.05);border:1px solid rgba(255,255,255,.1);border-radius:var(--nh-radius);padding:22px;transition:background var(--nh-transition);}
.nh-literasi__item:hover{background:rgba(255,255,255,.1);}
.nh-literasi__num{font-family:var(--nh-font-head);font-weight:800;color:var(--nh-sage-soft);font-size:1.1rem;}
.nh-literasi__title{color:#fff;font-size:1.12rem;line-height:1.3;margin:.4em 0;}
.nh-literasi__title a{color:#fff;}
.nh-literasi__title a:hover{color:var(--nh-sage-soft);}
.nh-literasi__desc{color:#C7C4B2;font-size:.88rem;margin:0;}

.nh-konsultasi{background:linear-gradient(120deg,var(--nh-olive-700),var(--nh-olive-600));border-radius:var(--nh-radius-lg);padding:48px 44px;color:#fff;display:grid;grid-template-columns:1.5fr 1fr;gap:32px;align-items:center;position:relative;overflow:hidden;}
.nh-konsultasi::before{content:"";position:absolute;right:-60px;top:-60px;width:240px;height:240px;border-radius:50%;background:rgba(185,138,60,.18);}
.nh-konsultasi__title{color:#fff;font-size:1.9rem;margin:0 0 .35em;position:relative;}
.nh-konsultasi__text{color:#EDEAD9;margin:0;position:relative;}
.nh-konsultasi__actions{display:flex;flex-direction:column;gap:12px;position:relative;}
.nh-konsultasi__note{font-size:.8rem;color:#D5D2C2;margin:4px 0 0;}

.nh-newsletter{background:var(--nh-cream-2);border:1px solid var(--nh-border);border-radius:var(--nh-radius-lg);padding:40px;text-align:center;}
.nh-newsletter__title{font-size:1.6rem;margin:0 0 .3em;}
.nh-newsletter__text{color:var(--nh-ink-soft);max-width:54ch;margin:0 auto 22px;}
.nh-newsletter__form{display:flex;gap:10px;max-width:520px;margin:0 auto;}
.nh-newsletter__form input[type="email"]{flex:1;padding:13px 16px;border:1px solid var(--nh-border-2);border-radius:8px;font-size:1rem;background:#fff;}
.nh-newsletter__form input:focus{outline:2px solid var(--nh-sage);border-color:var(--nh-sage);}
.nh-newsletter--side{padding:24px;text-align:left;}
.nh-newsletter--side .nh-newsletter__title{font-size:1.2rem;}
.nh-newsletter--side .nh-newsletter__form{flex-direction:column;max-width:none;}

.nh-main-grid{display:grid;grid-template-columns:1fr 330px;gap:40px;align-items:start;}
.nh-content{min-width:0;}
.nh-article__header{margin-bottom:28px;}
.nh-article__title{font-size:2.4rem;line-height:1.15;margin:.3em 0 .4em;}
.nh-article__meta{display:flex;align-items:center;gap:14px;flex-wrap:wrap;font-size:.88rem;color:var(--nh-muted-2);}
.nh-article__meta a{color:var(--nh-olive-700);font-weight:600;}
.nh-article__avatar{width:40px;height:40px;border-radius:50%;overflow:hidden;}
.nh-article__avatar img{width:100%;height:100%;object-fit:cover;}
.nh-article__feat{margin:8px 0 30px;border-radius:var(--nh-radius);overflow:hidden;}
.nh-article__feat img{width:100%;}
.nh-article__feat figcaption{font-size:.8rem;color:var(--nh-muted-2);padding:8px 4px 0;text-align:center;}
.nh-entry{font-size:1.06rem;}
.nh-entry h2{font-size:1.7rem;margin-top:1.5em;}
.nh-entry h3{font-size:1.35rem;margin-top:1.3em;}
.nh-entry img{border-radius:var(--nh-radius);margin:1.2em 0;}
.nh-entry a{text-decoration:underline;text-underline-offset:3px;text-decoration-color:var(--nh-sage-soft);}
.nh-entry ul li,.nh-entry ol li{margin-bottom:.4em;}
.nh-tags{margin:30px 0;display:flex;flex-wrap:wrap;gap:8px;align-items:center;}
.nh-tags a{font-size:.82rem;background:var(--nh-cream-2);color:var(--nh-olive-700);padding:5px 12px;border-radius:20px;border:1px solid var(--nh-border);}
.nh-tags a:hover{background:var(--nh-olive-600);color:#fff;border-color:var(--nh-olive-600);}
.nh-share{display:flex;gap:10px;align-items:center;margin:24px 0;flex-wrap:wrap;}
.nh-share span{font-weight:600;font-size:.85rem;color:var(--nh-muted-2);}
.nh-share a{font-size:.82rem;font-weight:600;border:1px solid var(--nh-border-2);padding:7px 14px;border-radius:7px;color:var(--nh-olive-700);}
.nh-share a:hover{background:var(--nh-olive-600);color:#fff;border-color:var(--nh-olive-600);}
.nh-authorbox{display:flex;gap:20px;align-items:flex-start;background:var(--nh-cream-2);border:1px solid var(--nh-border);border-radius:var(--nh-radius-lg);padding:24px;margin:34px 0;}
.nh-authorbox__avatar{flex:0 0 78px;}
.nh-authorbox__avatar img{width:78px;height:78px;border-radius:50%;object-fit:cover;border:3px solid #fff;box-shadow:var(--nh-shadow);}
.nh-authorbox__label{font-size:.74rem;text-transform:uppercase;letter-spacing:.08em;color:var(--nh-muted-2);font-weight:700;}
.nh-authorbox__name{font-size:1.3rem;margin:.15em 0 .3em;}
.nh-authorbox__name a{color:var(--nh-olive-900);}
.nh-authorbox__bio{font-size:.92rem;color:var(--nh-ink-soft);margin:0 0 .6em;}
.nh-authorbox__links a{font-size:.82rem;font-weight:600;margin-right:14px;}
.nh-author-hero{background:var(--nh-cream-2);border-bottom:1px solid var(--nh-border);padding:44px 0;}
.nh-author-hero .nh-wrap{display:flex;gap:24px;align-items:center;}
.nh-author-hero__avatar img{width:96px;height:96px;border-radius:50%;border:4px solid #fff;box-shadow:var(--nh-shadow);}
.nh-author-hero__name{font-size:2rem;margin:0 0 .2em;}
.nh-author-hero__bio{color:var(--nh-ink-soft);margin:0;max-width:62ch;}
.nh-page-hero{background:var(--nh-olive-800);color:#fff;padding:48px 0;}
.nh-page-hero .nh-wrap{position:relative;}
.nh-page-hero__kicker{font-size:.8rem;letter-spacing:.1em;text-transform:uppercase;color:var(--nh-sage-soft);font-weight:700;margin:0 0 6px;}
.nh-page-hero__title{color:#fff;font-size:2.2rem;margin:0;}
.nh-page-hero__desc{color:#D9D6C6;margin:.6em 0 0;max-width:64ch;}
.nh-breadcrumb{font-size:.82rem;color:var(--nh-muted-2);margin:0 0 18px;}
.nh-breadcrumb a{color:var(--nh-olive-700);}
.nh-breadcrumb .sep{margin:0 6px;color:var(--nh-border-2);}

.nh-sidebar{display:flex;flex-direction:column;gap:30px;}
.nh-widget{background:var(--nh-card);border:1px solid var(--nh-border);border-radius:var(--nh-radius);padding:22px;}
.nh-widget--plain{background:transparent;border:0;padding:0;}
.nh-widget__title,.nh-widget .widget-title{font-size:1.05rem;margin:0 0 16px;padding-bottom:10px;border-bottom:2px solid var(--nh-border);position:relative;}
.nh-widget__title::after,.nh-widget .widget-title::after{content:"";position:absolute;left:0;bottom:-2px;width:48px;height:2px;background:var(--nh-gold);}
.nh-widget ul{list-style:none;margin:0;padding:0;}
.nh-widget ul li{padding:9px 0;border-bottom:1px solid var(--nh-border);font-size:.92rem;}
.nh-widget ul li:last-child{border-bottom:0;}
.nh-widget ul li a{color:var(--nh-ink);}
.nh-widget ul li a:hover{color:var(--nh-olive-700);}
.nh-sticky{position:sticky;top:84px;}

.nh-pagination{display:flex;justify-content:center;gap:8px;margin:44px 0 0;flex-wrap:wrap;}
.nh-pagination .page-numbers{display:inline-flex;align-items:center;justify-content:center;min-width:42px;height:42px;padding:0 12px;border:1px solid var(--nh-border-2);border-radius:8px;color:var(--nh-olive-700);font-weight:600;background:#fff;}
.nh-pagination .page-numbers.current{background:var(--nh-olive-600);color:#fff;border-color:var(--nh-olive-600);}
.nh-pagination .page-numbers:hover{background:var(--nh-cream-2);}
.nh-pagination .page-numbers.current:hover{background:var(--nh-olive-700);}
.nh-comments{margin:44px 0 0;}
.nh-comments__title{font-size:1.5rem;margin:0 0 24px;}
.comment-list{list-style:none;margin:0;padding:0;}
.comment-list li{margin:0 0 22px;}
.comment-body{background:var(--nh-card);border:1px solid var(--nh-border);border-radius:var(--nh-radius);padding:18px 20px;}
.comment-author{font-weight:700;color:var(--nh-olive-900);font-size:.95rem;}
.comment-author .avatar{border-radius:50%;margin-right:10px;vertical-align:middle;}
.comment-meta{font-size:.78rem;color:var(--nh-muted-2);margin-bottom:8px;}
.comment-list .children{list-style:none;margin:18px 0 0 28px;padding:0;}
.comment-respond{background:var(--nh-cream-2);border:1px solid var(--nh-border);border-radius:var(--nh-radius);padding:24px;margin-top:24px;}
.comment-form input[type="text"],.comment-form input[type="email"],.comment-form input[type="url"],.comment-form textarea{width:100%;padding:11px 14px;border:1px solid var(--nh-border-2);border-radius:8px;font-family:inherit;font-size:.95rem;margin-bottom:14px;background:#fff;}
.comment-form .form-submit input{background:var(--nh-olive-600);color:#fff;border:0;padding:12px 26px;border-radius:8px;font-weight:600;cursor:pointer;}

.nh-footer{background:var(--nh-olive-900);color:#CBC8B6;margin-top:60px;}
.nh-footer__top{padding:54px 0 40px;display:grid;grid-template-columns:1.6fr 1fr 1fr 1fr;gap:36px;}
.nh-footer__brand-title{font-family:var(--nh-font-head);font-size:1.6rem;color:#fff;margin:0 0 .4em;}
.nh-footer__about{font-size:.9rem;color:#B6B3A2;max-width:38ch;}
.nh-footer h4{color:#fff;font-size:1rem;margin:0 0 16px;}
.nh-footer ul{list-style:none;margin:0;padding:0;}
.nh-footer ul li{padding:6px 0;font-size:.9rem;}
.nh-footer ul li a{color:#C7C4B2;}
.nh-footer ul li a:hover{color:#fff;}
.nh-footer__social{display:flex;gap:10px;margin-top:14px;}
.nh-footer__social a{width:38px;height:38px;border-radius:50%;display:flex;align-items:center;justify-content:center;background:rgba(255,255,255,.08);color:#EDEAD9;font-weight:700;font-size:.8rem;}
.nh-footer__social a:hover{background:var(--nh-gold);color:#fff;}
.nh-footer__bottom{border-top:1px solid rgba(255,255,255,.08);padding:20px 0;font-size:.84rem;}
.nh-footer__bottom .nh-wrap{display:flex;justify-content:space-between;gap:16px;flex-wrap:wrap;}
.nh-footer__legal a{color:#C7C4B2;margin-left:16px;}

.aligncenter{margin-left:auto;margin-right:auto;}
.alignleft{float:left;margin:0 1.5em 1em 0;}
.alignright{float:right;margin:0 0 1em 1.5em;}
.wp-caption{max-width:100%;}
.wp-caption-text{font-size:.82rem;color:var(--nh-muted-2);text-align:center;padding-top:6px;}
.nh-empty{text-align:center;padding:60px 20px;}
.nh-empty h2{font-size:1.6rem;}
.nh-empty p{color:var(--nh-ink-soft);}

@media (max-width:1024px){
  .nh-footer__top{grid-template-columns:1fr 1fr;gap:28px;}
  .nh-grid--4{grid-template-columns:repeat(2,1fr);}
}
@media (max-width:900px){
  .nh-hero__grid{grid-template-columns:1fr;}
  .nh-hero__side{flex-direction:row;}
  .nh-main-grid{grid-template-columns:1fr;}
  .nh-konsultasi{grid-template-columns:1fr;}
  .nh-literasi__grid{grid-template-columns:1fr 1fr;}
}
@media (max-width:768px){
  body{font-size:16px;}
  .nh-menu-toggle{display:flex;}
  .nh-nav .nh-wrap{flex-wrap:wrap;}
  .nh-menu{display:none;flex-direction:column;width:100%;background:var(--nh-olive-900);border-radius:0 0 10px 10px;}
  .nh-menu.is-open{display:flex;}
  .nh-menu li{width:100%;}
  .nh-menu .sub-menu{position:static;opacity:1;visibility:visible;transform:none;box-shadow:none;background:rgba(0,0,0,.2);}
  .nh-grid--3,.nh-grid--2,.nh-grid--4{grid-template-columns:1fr;}
  .nh-article__title{font-size:1.8rem;}
  .nh-konsultasi,.nh-literasi,.nh-newsletter{padding:30px 22px;}
  .nh-literasi__grid{grid-template-columns:1fr;}
  .nh-footer__top{grid-template-columns:1fr;}
  .nh-masthead .nh-wrap{flex-direction:column;align-items:flex-start;gap:16px;}
  .nh-newsletter__form{flex-direction:column;}
}
@media (max-width:520px){
  .nh-hero__side{flex-direction:column;}
  .nh-brand__title{font-size:1.6rem;}
  .nh-hero__title{font-size:1.7rem;}
  .nh-topbar__social{display:none;}
}

/* =========================================================
   17. PENYEMPURNAAN v1.3
   ========================================================= */

/* Jarak antar-paragraf artikel lebih lega & nyaman dibaca */
.nh-entry{ line-height:1.8; }
.nh-entry p{ margin:0 0 1.75em; }
.nh-entry p:last-child{ margin-bottom:0; }
.nh-entry ul,.nh-entry ol{ margin:0 0 1.6em; }
.nh-entry h2,.nh-entry h3,.nh-entry h4{ margin-top:1.7em; margin-bottom:.6em; }

/* Judul widget sidebar — termasuk widget blok (Archives, Categories, Recent Comments) */
.nh-widget h2,
.nh-widget h4.widget-title,
.nh-widget .widget-title,
.nh-widget .wp-block-heading{
  font-family:var(--nh-font-head);
  color:var(--nh-olive-900);
  font-size:1.05rem;
  line-height:1.35;
  font-weight:700;
  margin:0 0 16px;
  padding-bottom:10px;
  border-bottom:2px solid var(--nh-border);
  position:relative;
}
.nh-widget h2::after,
.nh-widget .widget-title::after,
.nh-widget .wp-block-heading::after{
  content:"";position:absolute;left:0;bottom:-2px;width:48px;height:2px;background:var(--nh-gold);
}
/* Jangan ikut mengecilkan judul daftar "Terpopuler" di dalam widget */
.nh-widget .nh-rank__title,
.nh-widget .nh-rank__title a{
  font-family:var(--nh-font-body);
  font-size:.95rem;
  border:0;
  padding:0;
}
.nh-widget .nh-rank__title::after{ display:none; }

/* Rapikan daftar bawaan widget blok */
.nh-widget .wp-block-categories,
.nh-widget .wp-block-archives,
.nh-widget .wp-block-latest-comments,
.nh-widget .wp-block-latest-posts{ list-style:none;margin:0;padding:0; }
.nh-widget .wp-block-categories li,
.nh-widget .wp-block-archives li{ padding:9px 0;border-bottom:1px solid var(--nh-border);font-size:.92rem; }
.nh-widget .wp-block-categories li:last-child,
.nh-widget .wp-block-archives li:last-child{ border-bottom:0; }
.nh-widget .wp-block-latest-comments__comment{ font-size:.9rem;margin-bottom:12px; }

/* =========================================================
   18. HALAMAN REDAKSI / TIM PENULIS
   ========================================================= */
.nh-team{display:grid;grid-template-columns:repeat(3,1fr);gap:24px;}
.nh-team__card{
  background:var(--nh-card);border:1px solid var(--nh-border);border-radius:var(--nh-radius-lg);
  padding:30px 24px;text-align:center;transition:transform var(--nh-transition),box-shadow var(--nh-transition);
}
.nh-team__card:hover{transform:translateY(-4px);box-shadow:var(--nh-shadow-lg);}
.nh-team__avatar{display:inline-block;width:104px;height:104px;border-radius:50%;overflow:hidden;border:4px solid var(--nh-cream-2);box-shadow:var(--nh-shadow);margin-bottom:14px;}
.nh-team__avatar img{width:100%;height:100%;object-fit:cover;}
.nh-team__name{font-size:1.25rem;margin:0 0 .2em;}
.nh-team__name a{color:var(--nh-olive-900);}
.nh-team__name a:hover{color:var(--nh-gold-dark);}
.nh-team__count{font-size:.8rem;text-transform:uppercase;letter-spacing:.06em;color:var(--nh-muted-2);font-weight:600;margin:0 0 12px;}
.nh-team__bio{font-size:.92rem;color:var(--nh-ink-soft);margin:0 0 16px;}
.nh-team__links{display:flex;gap:16px;justify-content:center;flex-wrap:wrap;}
.nh-team__links a{font-size:.85rem;font-weight:600;}
@media (max-width:900px){ .nh-team{grid-template-columns:1fr 1fr;} }
@media (max-width:600px){ .nh-team{grid-template-columns:1fr;} }

/* =========================================================
   19. SEGMEN BERANDA: UNGGULAN / ANALISIS / NASIONAL
   ========================================================= */
.nh-feature{border-radius:var(--nh-radius-lg);padding:40px;}
.nh-feature__empty{color:var(--nh-ink-soft);font-size:.95rem;margin:0;}

/* Unggulan — tone sandy/emas, layout 1 besar + daftar */
.nh-feature--unggulan{background:#F4ECD8;border:1px solid #E7D9B6;}
.nh-feature--unggulan .nh-section-title::before{background:linear-gradient(var(--nh-gold),#E0B968);}
.nh-unggulan__grid{display:grid;grid-template-columns:1.5fr 1fr;gap:26px;align-items:start;}
.nh-unggulan__lead{box-shadow:var(--nh-shadow);}
.nh-unggulan__lead .nh-card__title{font-size:1.5rem;}
.nh-unggulan__lead .nh-card__thumb{aspect-ratio:16/9;}
.nh-unggulan__side{display:flex;flex-direction:column;background:rgba(255,255,255,.55);border:1px solid #E7D9B6;border-radius:var(--nh-radius);padding:6px 18px;}
.nh-unggulan__side .nh-list-card{border-bottom:1px solid #E2D4B0;}
@media (max-width:900px){ .nh-unggulan__grid{grid-template-columns:1fr;} }

/* Analisis — tone sage sejuk, kartu horizontal 2 kolom */
.nh-feature--analisis{background:#EAF1F9;border:1px solid #D5E1EF;}
.nh-feature--analisis .nh-section-title::before{background:linear-gradient(var(--nh-terracotta),var(--nh-sage));}
.nh-analisis__grid{display:grid;grid-template-columns:1fr 1fr;gap:6px 30px;}
.nh-analisis__grid .nh-list-card{border-bottom:1px solid #D5E1EF;}
.nh-analisis__grid .nh-list-card__thumb{flex-basis:120px;}
@media (max-width:768px){ .nh-analisis__grid{grid-template-columns:1fr;} }

/* Nasional — daftar judul ringkas, banyak, 2 kolom */
.nh-feature--nasional{background:var(--nh-card);border:1px solid var(--nh-border);}
.nh-feature--nasional .nh-section-title::before{background:linear-gradient(var(--nh-olive-600),var(--nh-gold));}
.nh-nasional__list{list-style:none;margin:0;padding:0;column-count:2;column-gap:44px;}
.nh-nasional__list li{break-inside:avoid;display:flex;gap:10px;padding:12px 0;border-bottom:1px solid var(--nh-border);}
.nh-nasional__list li::before{content:"\203A";color:var(--nh-gold);font-weight:800;line-height:1.5;}
.nh-nasional__title{font-family:var(--nh-font-body);font-weight:600;font-size:.96rem;color:var(--nh-olive-900);line-height:1.4;}
.nh-nasional__title:hover{color:var(--nh-gold-dark);}
.nh-nasional__date{display:block;font-family:var(--nh-font-body);font-weight:400;font-size:.74rem;color:var(--nh-muted-2);margin-top:3px;}
@media (max-width:600px){ .nh-nasional__list{column-count:1;} .nh-feature{padding:28px 22px;} }

/* =========================================================
   20. BLOK BERITA FOTO (sidebar)
   ========================================================= */
.nh-fotonews__item{position:relative;display:block;border-radius:var(--nh-radius);overflow:hidden;aspect-ratio:4/3;background:var(--nh-cream-2);}
.nh-fotonews__img,.nh-fotonews__img img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;}
.nh-fotonews__img img{transition:transform .45s ease;}
.nh-fotonews__item:hover .nh-fotonews__img img{transform:scale(1.06);}
.nh-fotonews__item::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(14,32,52,0) 38%,rgba(14,32,52,.92) 100%);}
.nh-fotonews__overlay{position:absolute;left:0;right:0;bottom:0;z-index:2;padding:16px;display:flex;flex-direction:column;gap:8px;align-items:flex-start;}
.nh-fotonews__title{color:#fff;font-family:var(--nh-font-head);font-weight:700;font-size:1.08rem;line-height:1.3;}
.nh-fotonews__cap{margin:12px 0 0;font-size:.85rem;color:var(--nh-ink-soft);line-height:1.5;}

/* =========================================================
   21. KARTU BERITA LEBIH RINGKAS & PROPORSIONAL
   ========================================================= */
.nh-card__thumb{aspect-ratio:16/9;}
.nh-card__body{padding:14px 17px 18px;gap:8px;}
.nh-card__title{font-size:1.05rem;line-height:1.32;}
.nh-card__excerpt{font-size:.875rem;line-height:1.55;}
.nh-card__meta{font-size:.76rem;}
.nh-grid{gap:22px;}
/* Kartu unggulan utama tetap lebih besar agar menonjol */
.nh-unggulan__lead .nh-card__title{font-size:1.4rem;}
.nh-unggulan__lead .nh-card__thumb{aspect-ratio:16/9;}

/* =========================================================
   22. UNGGULAN: ratakan tinggi kolom kiri & kanan
   ========================================================= */
.nh-unggulan__grid{align-items:stretch;}
.nh-unggulan__lead{height:100%;}
/* Foto utama mengisi sisa ruang agar bawah kartu sejajar dengan daftar kanan */
.nh-unggulan__lead .nh-card__thumb{aspect-ratio:auto;flex:1 1 auto;min-height:300px;}
/* Daftar kanan menyebar merata bila lebih pendek dari kartu utama */
.nh-unggulan__side{height:100%;justify-content:space-between;}

/* =========================================================
   23. LITERASI tanpa penomoran
   ========================================================= */
.nh-literasi__title{margin-top:0;}

/* =========================================================
   24. Rapatkan jarak antar-section beranda
   ========================================================= */
.nh-section{padding:30px 0;}
@media (max-width:768px){ .nh-section{padding:22px 0;} }

/* =========================================================
   25. Judul kartu maksimal 2 baris + elipsis
   ========================================================= */
.nh-card__title,
.nh-list-card__title{
  display:-webkit-box;
  -webkit-line-clamp:2;
  line-clamp:2;
  -webkit-box-orient:vertical;
  overflow:hidden;
}
/* Ringkasan kartu juga dirapikan agar tinggi konsisten */
.nh-card__excerpt{
  display:-webkit-box;
  -webkit-line-clamp:3;
  line-clamp:3;
  -webkit-box-orient:vertical;
  overflow:hidden;
}
@media (max-width:768px){
  .nh-card__title,
  .nh-list-card__title{ -webkit-line-clamp:2; line-clamp:2; }
}

/* Footer CTA: tombol Berlangganan + Konsultasi berdampingan */
.nh-footer__cta{display:flex;flex-wrap:wrap;gap:10px;margin-top:6px;}
.nh-footer__cta .nh-btn{padding:10px 18px;font-size:.9rem;}

/* =========================================================
   26. HEADER RATA TENGAH (gaya kompas.id)
   ========================================================= */
/* Topbar di tengah */
.nh-topbar .nh-wrap{justify-content:center;gap:26px;}

/* Masthead: brand/logo di tengah */
.nh-masthead .nh-wrap{flex-direction:column;align-items:center;text-align:center;gap:6px;}
.nh-brand{align-items:center;text-align:center;}
.nh-brand__title{font-size:2.3rem;}
/* Logo kustom (WordPress membungkusnya .custom-logo) */
.nh-custom-logo{display:flex;justify-content:center;}
.nh-custom-logo img,
.nh-masthead .custom-logo{max-height:88px;width:auto;}

/* Navigasi: menu di tengah, ikon cari tetap di kanan (desktop) */
@media (min-width:769px){
  .nh-nav .nh-wrap{justify-content:center;position:relative;}
  .nh-menu{justify-content:center;}
  .nh-nav__tools{position:absolute;right:18px;top:50%;transform:translateY(-50%);}
}

/* =========================================================
   27. DAFTAR ISI (TOC) & DISCLAIMER ARTIKEL
   ========================================================= */
.nh-toc{
  background:var(--nh-cream-2);
  border:1px solid var(--nh-border);
  border-left:4px solid var(--nh-sage);
  border-radius:var(--nh-radius);
  padding:16px 22px;
  margin:0 0 28px;
}
.nh-toc__title{
  font-family:var(--nh-font-head);font-weight:700;color:var(--nh-olive-900);
  font-size:1.05rem;cursor:pointer;list-style:none;
}
.nh-toc__title::-webkit-details-marker{display:none;}
.nh-toc__title::before{content:"\25B8";display:inline-block;margin-right:8px;color:var(--nh-gold);transition:transform .2s;}
.nh-toc[open] .nh-toc__title::before{transform:rotate(90deg);}
.nh-toc__list{margin:14px 0 0;padding:0;list-style:none;counter-reset:toc;}
.nh-toc__item{counter-increment:toc;padding:5px 0;font-size:.95rem;line-height:1.4;}
.nh-toc__item a{color:var(--nh-olive-800);}
.nh-toc__item a:hover{color:var(--nh-gold-dark);text-decoration:underline;}
.nh-toc__item::before{content:counter(toc) ". ";color:var(--nh-sage);font-weight:700;}
.nh-toc__item--sub{counter-increment:none;padding-left:24px;font-size:.9rem;}
.nh-toc__item--sub::before{content:"\2013 ";color:var(--nh-sage-soft);}

/* Heading tidak tertutup nav sticky saat anchor diklik */
.nh-entry h2,.nh-entry h3{scroll-margin-top:92px;}

.nh-disclaimer{
  background:#FBF3E4;border:1px solid #E9D9B6;border-left:4px solid var(--nh-gold);
  border-radius:var(--nh-radius);padding:18px 22px;margin:30px 0;
}
.nh-disclaimer__label{
  display:block;font-family:var(--nh-font-body);font-size:.72rem;letter-spacing:.08em;
  text-transform:uppercase;font-weight:700;color:var(--nh-gold-dark);margin-bottom:6px;
}
.nh-disclaimer__text{margin:0;font-size:.9rem;line-height:1.65;color:var(--nh-ink-soft);}

/* =========================================================
   28. DAFTAR ISI MENEMPEL (STICKY) DI SAMPING
   ========================================================= */
/* Default: versi sticky tampil (desktop), versi inline disembunyikan */
.nh-toc--inline{display:none;}
.nh-toc--sticky{display:block;margin:0 0 24px;}
/* Caret hanya untuk versi collapsible (summary), bukan judul statis */
.nh-toc__title::before{content:none;}
summary.nh-toc__title{display:list-item;}
summary.nh-toc__title::before{content:"\25B8";display:inline-block;margin-right:8px;color:var(--nh-gold);transition:transform .2s;}
.nh-toc[open] summary.nh-toc__title::before{transform:rotate(90deg);}
.nh-toc__title--static::before{content:none !important;}
/* Agar kolom sidebar setinggi artikel sehingga TOC bisa mengikuti scroll */
.nh-main-grid{align-items:stretch;}
@media (max-width:900px){
  .nh-toc--inline{display:block;}
  .nh-toc--sticky{display:none;}
  .nh-main-grid{align-items:start;}
}

/* =========================================================
   29. REDAKSI / TIM — GAYA STARTUP
   ========================================================= */
.nh-team{grid-template-columns:repeat(3,1fr);gap:28px;}
.nh-team__card{
  background:var(--nh-card);border:1px solid var(--nh-border);border-radius:var(--nh-radius-lg);
  padding:34px 24px 28px;text-align:center;position:relative;
  transition:transform .25s ease, box-shadow .25s ease, border-color .25s ease;
}
.nh-team__card:hover{transform:translateY(-6px);box-shadow:var(--nh-shadow-lg);border-color:var(--nh-sage-soft);}
.nh-team__avatar{
  display:inline-block;width:124px;height:124px;border-radius:50%;overflow:hidden;
  padding:4px;background:linear-gradient(135deg,var(--nh-sage),var(--nh-gold));
  box-shadow:var(--nh-shadow);margin-bottom:16px;
}
.nh-team__avatar img{width:100%;height:100%;border-radius:50%;object-fit:cover;border:3px solid var(--nh-card);display:block;}
.nh-team__name{font-size:1.25rem;margin:0 0 .3em;}
.nh-team__name a{color:var(--nh-olive-900);}
.nh-team__name a:hover{color:var(--nh-gold-dark);}
.nh-team__role{
  display:inline-block;font-size:.72rem;font-weight:700;letter-spacing:.05em;text-transform:uppercase;
  color:var(--nh-olive-700);background:var(--nh-cream-2);border:1px solid var(--nh-border);
  padding:4px 13px;border-radius:20px;margin:0 0 14px;
}
.nh-team__bio{font-size:.9rem;color:var(--nh-ink-soft);margin:0 0 16px;line-height:1.55;}
.nh-team__social{display:flex;gap:8px;justify-content:center;margin:0 0 16px;flex-wrap:wrap;}
.nh-team__social a{
  width:34px;height:34px;border-radius:50%;display:flex;align-items:center;justify-content:center;
  background:var(--nh-cream-2);color:var(--nh-olive-700);font-size:.7rem;font-weight:700;
  border:1px solid var(--nh-border);transition:all .2s;
}
.nh-team__social a:hover{background:var(--nh-olive-600);color:#fff;border-color:var(--nh-olive-600);transform:translateY(-2px);}
.nh-team__view{display:inline-block;font-size:.85rem;font-weight:600;color:var(--nh-olive-700);}
.nh-team__view:hover{color:var(--nh-gold-dark);}
@media (max-width:900px){ .nh-team{grid-template-columns:1fr 1fr;} }
@media (max-width:600px){ .nh-team{grid-template-columns:1fr;} }

/* Jabatan di halaman profil penulis */
.nh-author-hero__role{
  display:inline-block;font-size:.78rem;font-weight:700;letter-spacing:.05em;text-transform:uppercase;
  color:var(--nh-olive-700);background:#fff;border:1px solid var(--nh-border);
  padding:4px 13px;border-radius:20px;margin:0 0 8px;
}

/* =========================================================
   30. REDAKSI — KOTAK AJAKAN BERGABUNG
   ========================================================= */
.nh-join{
  margin-top:44px;
  background:linear-gradient(120deg,var(--nh-olive-700),var(--nh-olive-600));
  border-radius:var(--nh-radius-lg);padding:40px 44px;color:#fff;
  display:flex;align-items:center;justify-content:space-between;gap:28px;flex-wrap:wrap;
  position:relative;overflow:hidden;
}
.nh-join::before{content:"";position:absolute;right:-50px;top:-50px;width:200px;height:200px;border-radius:50%;background:rgba(185,138,60,.18);}
.nh-join__title{color:#fff;font-size:1.55rem;margin:0 0 .3em;position:relative;}
.nh-join__text{color:#EDEAD9;margin:0;position:relative;max-width:60ch;}
.nh-join__btn{position:relative;white-space:nowrap;flex:0 0 auto;}
@media (max-width:600px){ .nh-join{padding:30px 24px;} .nh-join__title{font-size:1.3rem;} }

/* =========================================================
   31. TOMBOL KEMBALI KE ATAS
   ========================================================= */
.nh-to-top{
  position:fixed;right:24px;bottom:24px;z-index:80;
  width:48px;height:48px;border:0;border-radius:50%;cursor:pointer;
  background:var(--nh-olive-600);color:#fff;
  display:flex;align-items:center;justify-content:center;
  box-shadow:0 6px 18px rgba(15,34,56,.25);
  opacity:0;visibility:hidden;transform:translateY(12px);
  transition:opacity .25s ease, transform .25s ease, background .2s ease, visibility .25s ease;
}
.nh-to-top.is-visible{opacity:1;visibility:visible;transform:translateY(0);}
.nh-to-top:hover{background:var(--nh-gold);transform:translateY(-2px);}
.nh-to-top:focus-visible{outline:3px solid var(--nh-sage-soft);outline-offset:2px;}
@media (max-width:768px){ .nh-to-top{right:16px;bottom:16px;width:44px;height:44px;} }

/* =========================================================
   32. KANAL REGULASI
   ========================================================= */
.nh-reg-tags{display:flex;gap:8px;align-items:center;flex-wrap:wrap;margin-bottom:10px;}
.nh-reg-status{font-size:.7rem;font-weight:700;letter-spacing:.05em;text-transform:uppercase;padding:4px 11px;border-radius:5px;}
.nh-reg-status--berlaku{background:#E6F4EA;color:#1E7A3D;border:1px solid #BFE3C9;}
.nh-reg-status--diubah{background:#FEF6E0;color:#9A6F2C;border:1px solid #ECD9A8;}
.nh-reg-status--dicabut{background:#FBEAEA;color:#B3261E;border:1px solid #F0C7C5;}
.nh-reg-status--rancangan{background:#E8EDF7;color:#2F6195;border:1px solid #C9D6EA;}
.nh-reg-meta-bar{display:flex;flex-wrap:wrap;gap:18px;font-size:.92rem;color:var(--nh-ink-soft);margin-top:8px;}
.nh-reg-meta-bar a{color:var(--nh-olive-700);font-weight:600;}
.nh-reg-abstract{margin:24px 0;}
.nh-reg-doc{margin:28px 0;border:1px solid var(--nh-border);border-radius:var(--nh-radius-lg);overflow:hidden;background:var(--nh-cream-2);}
.nh-reg-doc__head{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:16px 20px;flex-wrap:wrap;}
.nh-reg-doc__title{margin:0;font-size:1.15rem;}
.nh-reg-doc__viewer{display:block;width:100%;height:720px;border:0;border-top:1px solid var(--nh-border);background:#fff;}
.nh-reg-doc__fallback{padding:44px 20px;text-align:center;}
.nh-reg-doc__fallback p{color:var(--nh-ink-soft);}
.nh-reg-source{font-size:.88rem;color:var(--nh-muted-2);margin:18px 0;}
.nh-reg-source a{color:var(--nh-olive-700);word-break:break-all;}

.nh-reg-filter{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:26px;}
.nh-reg-filter__pill{padding:8px 16px;border-radius:24px;border:1px solid var(--nh-border-2);font-size:.88rem;font-weight:600;color:var(--nh-olive-700);background:#fff;}
.nh-reg-filter__pill:hover{background:var(--nh-cream-2);}
.nh-reg-filter__pill.is-active{background:var(--nh-olive-600);color:#fff;border-color:var(--nh-olive-600);}

.nh-reg-list{display:flex;flex-direction:column;gap:14px;}
.nh-reg-item{display:flex;align-items:center;gap:18px;background:var(--nh-card);border:1px solid var(--nh-border);border-radius:var(--nh-radius);padding:18px 20px;transition:box-shadow .2s,transform .2s,border-color .2s;}
.nh-reg-item:hover{box-shadow:var(--nh-shadow-lg);transform:translateY(-2px);border-color:var(--nh-sage-soft);}
.nh-reg-item__icon{flex:0 0 auto;width:48px;height:48px;border-radius:10px;display:flex;align-items:center;justify-content:center;background:var(--nh-cream-2);color:var(--nh-olive-600);}
.nh-reg-item__body{flex:1;min-width:0;}
.nh-reg-item__tags{display:flex;gap:8px;align-items:center;margin-bottom:6px;flex-wrap:wrap;}
.nh-reg-item__title{font-size:1.1rem;line-height:1.35;margin:0 0 4px;}
.nh-reg-item__title a{color:var(--nh-olive-900);}
.nh-reg-item__title a:hover{color:var(--nh-gold-dark);}
.nh-reg-item__meta{display:flex;gap:12px;font-size:.82rem;color:var(--nh-muted-2);align-items:center;}
.nh-reg-item__pdf{font-weight:700;color:#B3261E;border:1px solid #F0C7C5;border-radius:4px;padding:1px 6px;font-size:.72rem;}
.nh-reg-item__go{flex:0 0 auto;font-size:1.4rem;color:var(--nh-olive-600);text-decoration:none;padding:0 6px;}
.nh-reg-item:hover .nh-reg-item__go{color:var(--nh-gold);}
@media (max-width:600px){ .nh-reg-doc__viewer{height:480px;} .nh-reg-item__icon{display:none;} }

/* =========================================================
   33. REGULASI — pencarian arsip & blok beranda
   ========================================================= */
.nh-reg-search{display:flex;gap:10px;margin-bottom:18px;flex-wrap:wrap;}
.nh-reg-search input[type="search"]{flex:1;min-width:200px;padding:11px 16px;border:1px solid var(--nh-border-2);border-radius:8px;font-size:.95rem;background:#fff;}
.nh-reg-search input[type="search"]:focus{outline:2px solid var(--nh-sage);border-color:var(--nh-sage);}
.nh-reg-search select{padding:11px 14px;border:1px solid var(--nh-border-2);border-radius:8px;font-size:.92rem;background:#fff;color:var(--nh-ink);}
.nh-reg-active{font-size:.9rem;color:var(--nh-ink-soft);margin:0 0 20px;}
.nh-reg-reset{font-weight:600;color:var(--nh-olive-700);margin-left:10px;}
.nh-reg-reset::before{content:"\2715 ";font-size:.8em;}
.nh-reg-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px;}
@media (max-width:768px){ .nh-reg-grid{grid-template-columns:1fr;} .nh-reg-search input[type="search"]{min-width:140px;} }

/* =========================================================
   34. PAGE HERO — navy bertekstur halus & beraksen emas
   ========================================================= */
.nh-page-hero{
  background:linear-gradient(135deg, var(--nh-olive-700) 0%, var(--nh-olive-900) 100%);
  position:relative;
  overflow:hidden;
  border-bottom:3px solid var(--nh-gold);
}
/* tekstur titik samar */
.nh-page-hero::before{
  content:"";position:absolute;inset:0;pointer-events:none;
  background-image:radial-gradient(rgba(255,255,255,.06) 1px, transparent 1.4px);
  background-size:24px 24px;
  opacity:.6;
}
/* cahaya emas lembut di sudut kanan atas */
.nh-page-hero::after{
  content:"";position:absolute;right:-60px;top:-50px;width:360px;height:360px;border-radius:50%;
  pointer-events:none;
  background:radial-gradient(circle, rgba(185,138,60,.20) 0%, rgba(185,138,60,0) 68%);
}
.nh-page-hero .nh-wrap{position:relative;z-index:1;}
/* aksen emas pada kicker */
.nh-page-hero__kicker::before{
  content:"";display:inline-block;width:26px;height:2px;background:var(--nh-gold);
  vertical-align:middle;margin:0 10px 3px 0;
}


/* =========================================================
   35. PAGE HERO — motif timbangan keadilan (pengganti tekstur titik)
   ========================================================= */
.nh-page-hero::before{
  background-image:url("data:image/svg+xml,%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20viewBox=%220%200%2024%2024%22%20fill=%22none%22%20stroke=%22%23ffffff%22%20stroke-width=%221.1%22%20stroke-linecap=%22round%22%20stroke-linejoin=%22round%22%3E%3Cpath%20d=%22m16%2016%203-8%203%208c-.87.65-1.92%201-3%201s-2.13-.35-3-1Z%22/%3E%3Cpath%20d=%22m2%2016%203-8%203%208c-.87.65-1.92%201-3%201s-2.13-.35-3-1Z%22/%3E%3Cpath%20d=%22M7%2021h10%22/%3E%3Cpath%20d=%22M12%203v18%22/%3E%3Cpath%20d=%22M3%207h2c2%200%205-1%207-2%202%201%205%202%207%202h2%22/%3E%3C/svg%3E");
  background-repeat:no-repeat;
  background-position:right -24px center;
  background-size:320px auto;
  opacity:.09;
}
.nh-page-hero::after{
  right:-40px;top:50%;left:auto;transform:translateY(-50%);
  width:440px;height:440px;
  background:radial-gradient(circle, rgba(185,138,60,.16) 0%, rgba(185,138,60,0) 70%);
}
@media (max-width:768px){
  .nh-page-hero::before{background-size:200px auto;opacity:.07;background-position:right -30px bottom -20px;}
}

/* Form embed penyedia email (MailerLite/Brevo/dll.) di dalam panel newsletter */
.nh-newsletter__embed{max-width:520px;margin:0 auto;}
.nh-newsletter--side .nh-newsletter__embed{max-width:none;}
.nh-newsletter__embed input[type="email"],.nh-newsletter__embed input[type="text"]{max-width:100%;}

/* =========================================================
   36. PERBAIKAN FOTO PROFIL PENULIS (mobile & proporsi)
   ========================================================= */
.nh-author-hero__avatar{flex:0 0 auto;}
.nh-author-hero__avatar img{width:96px;height:96px;object-fit:cover;display:block;}
@media (max-width:600px){
  .nh-author-hero .nh-wrap{flex-direction:column;align-items:center;text-align:center;gap:16px;}
  .nh-author-hero__bio{margin-left:auto;margin-right:auto;}
  .nh-author-hero__avatar img{width:104px;height:104px;}
}

/* =========================================================
   37. HERO SLIDER (headline berganti otomatis)
   ========================================================= */
.nh-hero__main{display:block;}
.nh-hero__main::after{content:none;}
.nh-hero__slide{position:absolute;inset:0;display:flex;align-items:flex-end;opacity:0;visibility:hidden;transition:opacity .7s ease;}
.nh-hero__slide.is-active{opacity:1;visibility:visible;z-index:2;}
.nh-hero__slide::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(22,49,79,0) 25%,rgba(22,49,79,.55) 60%,rgba(14,32,52,.92) 100%);}
.nh-hero__slide .nh-hero__body{position:relative;z-index:2;padding:34px;color:#fff;}
.nh-hero__dots{position:absolute;right:22px;bottom:20px;z-index:6;display:flex;gap:8px;}
.nh-hero__dot{width:10px;height:10px;border-radius:50%;border:0;background:rgba(255,255,255,.5);cursor:pointer;padding:0;transition:all .3s ease;}
.nh-hero__dot:hover{background:#fff;}
.nh-hero__dot.is-active{background:var(--nh-gold);width:26px;border-radius:6px;}
@media (max-width:520px){ .nh-hero__slide .nh-hero__body{padding:22px;} .nh-hero__dots{right:14px;bottom:14px;} }

/* =========================================================
   38. HEADER BARU: tanggal | logo | cari (tanpa topbar)
   ========================================================= */
.nh-masthead .nh-masthead__row{
  display:grid;
  grid-template-columns:1fr auto 1fr;
  align-items:center;
  gap:18px;
  text-align:left;
}
.nh-masthead__date{justify-self:start;font-size:.85rem;color:var(--nh-muted-2);line-height:1.3;}
.nh-masthead .nh-brand{justify-self:center;}
.nh-masthead__search{justify-self:end;}
.nh-masthead__search .nh-search-toggle{
  background:transparent;border:0;cursor:pointer;color:var(--nh-olive-700);
  padding:8px;display:flex;align-items:center;border-radius:8px;
}
.nh-masthead__search .nh-search-toggle:hover{color:var(--nh-gold-dark);background:var(--nh-cream-2);}
@media (max-width:768px){
  .nh-masthead .nh-masthead__row{grid-template-columns:1fr auto;gap:10px;}
  .nh-masthead__date{display:none;}
  .nh-masthead .nh-brand{justify-self:center;}
}

/* =========================================================
   39. HERO SLIDER: judul 3 baris + cuplikan ringkas (utamanya mobile)
   ========================================================= */
.nh-hero__title{
  display:-webkit-box;-webkit-line-clamp:3;line-clamp:3;-webkit-box-orient:vertical;overflow:hidden;
}
.nh-hero__excerpt{
  display:-webkit-box;-webkit-line-clamp:2;line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;
}
@media (max-width:768px){
  .nh-hero__main{min-height:400px;}
  .nh-hero__slide .nh-hero__body{padding:20px;}
  .nh-hero__title{font-size:1.5rem;line-height:1.2;margin:.3em 0 .3em;}
  .nh-hero__excerpt{font-size:.9rem;line-height:1.45;margin-bottom:.5em;}
  .nh-hero__meta{font-size:.78rem;}
}
@media (max-width:520px){
  .nh-hero__title{font-size:1.32rem;}
  .nh-hero__main{min-height:360px;}
}

/* =========================================================
   40. KARTU KANAL (Firma Hukum) di sidebar
   ========================================================= */
.nh-channel-card{
  display:block;position:relative;overflow:hidden;
  background:linear-gradient(135deg,var(--nh-olive-700),var(--nh-olive-900));
  color:#fff;border-radius:var(--nh-radius);padding:22px;
  transition:transform .2s ease, box-shadow .2s ease;
}
.nh-channel-card:hover{transform:translateY(-3px);box-shadow:var(--nh-shadow-lg);color:#fff;}
.nh-channel-card::after{content:"";position:absolute;right:-40px;top:-40px;width:160px;height:160px;border-radius:50%;background:radial-gradient(circle,rgba(185,138,60,.22) 0%,rgba(185,138,60,0) 70%);}
.nh-channel-card__icon{position:relative;display:inline-flex;align-items:center;justify-content:center;width:44px;height:44px;border-radius:10px;background:rgba(255,255,255,.1);color:var(--nh-sage-soft);margin-bottom:12px;}
.nh-channel-card__label{position:relative;display:block;font-size:.7rem;letter-spacing:.08em;text-transform:uppercase;font-weight:700;color:var(--nh-sage-soft);}
.nh-channel-card__title{position:relative;display:block;font-family:var(--nh-font-head);font-weight:700;font-size:1.18rem;color:#fff;margin:.25em 0 .35em;line-height:1.25;}
.nh-channel-card__text{position:relative;display:block;font-size:.88rem;color:#D9DEE8;margin:0 0 14px;line-height:1.5;}
.nh-channel-card__btn{position:relative;display:inline-block;font-weight:600;font-size:.9rem;color:var(--nh-gold);}
.nh-channel-card:hover .nh-channel-card__btn{color:#fff;}

/* =========================================================
   41. PAGE HERO VERSI FOTO (khusus kanal Firma Hukum dll.)
   ========================================================= */
.nh-page-hero--photo{
  background-size:cover;
  background-position:center;
  padding-top:64px;
  padding-bottom:64px;
}
/* Ganti motif titik/timbangan dengan overlay gelap agar teks terbaca di atas foto */
.nh-page-hero--photo::before{
  background-image:linear-gradient(90deg, rgba(14,32,52,1) 0%, rgba(14,32,52,1) 32%, rgba(14,32,52,.72) 60%, rgba(14,32,52,.28) 100%);
  background-size:auto;
  opacity:1;
}
/* Pertahankan cahaya emas lembut di kanan */
.nh-page-hero--photo::after{
  background:radial-gradient(circle, rgba(185,138,60,.22) 0%, rgba(185,138,60,0) 70%);
}
@media (max-width:768px){
  .nh-page-hero--photo::before{background-image:linear-gradient(180deg, rgba(14,32,52,.96) 0%, rgba(14,32,52,.88) 42%, rgba(14,32,52,.55) 100%);}
}

/* =========================================================
   42. Cegah luapan horizontal (strip putih di sisi kiri/kanan)
   ========================================================= */
html, body{ overflow-x:clip; max-width:100%; }
.nh-site, .nh-page-hero, .nh-section, .nh-footer{ max-width:100%; }

/* =========================================================
   43. DESAIN ULANG HERO FOTO KANAL — elegan & profesional
   ========================================================= */
.nh-page-hero--photo{
  background-size:cover;
  background-position:center;
  padding-top:74px;
  padding-bottom:74px;
}
/* Dua lapis: gradien kiri->kanan untuk teks + wash navy merata agar foto menyatu */
.nh-page-hero--photo::before{
  background-image:
    linear-gradient(90deg, rgba(14,32,52,.96) 0%, rgba(14,32,52,.62) 48%, rgba(14,32,52,.24) 100%),
    linear-gradient(rgba(20,40,64,.42), rgba(20,40,64,.42));
  background-size:auto;
  opacity:1;
}
.nh-page-hero--photo::after{
  background:radial-gradient(circle, rgba(185,138,60,.16) 0%, rgba(185,138,60,0) 70%);
}
/* Aksen garis emas vertikal sebelum judul + tipografi lebih lapang */
.nh-page-hero--photo .nh-page-hero__title{
  position:relative;padding-left:22px;font-size:2.6rem;letter-spacing:-.01em;
  text-shadow:0 1px 18px rgba(0,0,0,.25);
}
.nh-page-hero--photo .nh-page-hero__title::before{
  content:"";position:absolute;left:0;top:.14em;bottom:.14em;width:4px;border-radius:3px;
  background:linear-gradient(var(--nh-gold), #E0B968);
}
.nh-page-hero--photo .nh-page-hero__desc{
  max-width:54ch;color:#DCE3EE;margin-top:.7em;padding-left:22px;
  text-shadow:0 1px 12px rgba(0,0,0,.25);
}
@media (max-width:768px){
  .nh-page-hero--photo{padding-top:52px;padding-bottom:52px;}
  .nh-page-hero--photo::before{
    background-image:
      linear-gradient(180deg, rgba(14,32,52,.9) 0%, rgba(14,32,52,.58) 100%),
      linear-gradient(rgba(20,40,64,.44), rgba(20,40,64,.44));
  }
  .nh-page-hero--photo .nh-page-hero__title{font-size:2rem;padding-left:14px;}
  .nh-page-hero--photo .nh-page-hero__desc{padding-left:14px;}
}

/* =========================================================
   44. KARTU KANAL VERSI FOTO
   ========================================================= */
.nh-channel-card--photo{
  background-color:var(--nh-olive-900);
  background-size:cover;
  background-position:center;
}
.nh-channel-card--photo::before{
  content:"";position:absolute;inset:0;z-index:0;
  background:linear-gradient(180deg, rgba(14,32,52,.5) 0%, rgba(14,32,52,.78) 55%, rgba(14,32,52,.94) 100%);
}
.nh-channel-card--photo > *{ position:relative; z-index:2; }
.nh-channel-card--photo::after{ z-index:1; }
.nh-channel-card--photo .nh-channel-card__icon{ background:rgba(255,255,255,.16); }

/* =========================================================
   45. KARTU KONSULTASI DI SIDEBAR
   ========================================================= */
.nh-side-konsul{cursor:default;}
.nh-side-konsul:hover{transform:none;box-shadow:var(--nh-shadow);}
.nh-side-konsul__btn{margin-top:4px;}

/* =========================================================
   46. KOTAK "BACA JUGA"
   ========================================================= */
.nh-baca-juga{
  background:var(--nh-cream-2);
  border:1px solid var(--nh-border);
  border-left:4px solid var(--nh-gold);
  border-radius:var(--nh-radius);
  padding:16px 22px;margin:28px 0;
}
.nh-baca-juga__label{
  display:block;font-family:var(--nh-font-body);font-size:.74rem;letter-spacing:.08em;
  text-transform:uppercase;font-weight:700;color:var(--nh-gold-dark);margin-bottom:8px;
}
.nh-baca-juga ul{list-style:none;margin:0;padding:0;}
.nh-baca-juga li{padding:5px 0 5px 18px;position:relative;line-height:1.4;}
.nh-baca-juga li::before{content:"\203A";position:absolute;left:0;color:var(--nh-gold);font-weight:800;}
.nh-baca-juga a{font-weight:600;color:var(--nh-olive-800);}
.nh-baca-juga a:hover{color:var(--nh-gold-dark);text-decoration:underline;}
