/* ═══════════════════════════════════════════════════
   PIWELING Custom CSS — v2.3 FINAL
   Palet: Navy #001F5B | Gold #DAA520 | Cream #F5EEDA
   ═══════════════════════════════════════════════════ */

@import url('https://fonts.googleapis.com/css2?family=Playfair+Display:wght@700&family=Source+Sans+3:wght@400;600;700&display=swap');

/* ══════════════════════════════
   1. VARIABEL GLOBAL
══════════════════════════════ */
:root {
  --piweling-navy:  #001F5B;
  --piweling-gold:  #DAA520;
  --piweling-cream: #F5EEDA;
  --piweling-white: #ffffff;
  --font-body:      'Source Sans 3', Arial, sans-serif;
  --font-heading:   'Playfair Display', Georgia, serif;
  --font-size-base: 16px;
  --radius:         6px;
  --shadow:         0 2px 8px rgba(0,31,91,0.12);
  --transition:     0.2s ease;
}

/* ══════════════════════════════
   2. RESET & BODY
══════════════════════════════ */
body {
  font-family: var(--font-body) !important;
  background-color: var(--piweling-cream) !important;
  font-size: var(--font-size-base) !important;
  line-height: 1.7 !important;
  color: #2a2a2a !important;
}

/* ══════════════════════════════
   3. HEADER / BANNER LOGO
   FIX v2.3: Override Bootstrap navbar
   layout agar logo tampil full-width
══════════════════════════════ */

/* Sembunyikan TEKS nama jurnal di header */
.pkp_site_name span.is_text,
.navbar-brand span.is_text,
.pkp_site_name a span.is_text {
  display: none !important;
}

/* Header flex column */
header#headerNavigationContainer {
  display: flex !important;
  flex-direction: column !important;
  padding: 0 !important;
}

/* Sembunyikan top bar (login/register) di dalam header */
header#headerNavigationContainer > .container-fluid:first-of-type {
  display: none !important;
}

/* Container kedua jadi flex column */
header#headerNavigationContainer > .container-fluid:last-of-type {
  display: flex !important;
  flex-direction: column !important;
  padding: 0 !important;
}

/* Wrapper header jadi full-width banner */
.navbar-header {
  width: 100% !important;
  float: none !important;
  background-color: transparent !important;
  max-width: 100% !important;
  display: block !important;
}

/* Navbar-brand jadi kontainer banner */
.navbar-brand,
.pkp_structure_head .navbar-brand {
  display: block !important;
  width: 100% !important;
  float: none !important;
  height: auto !important;
  padding: 0 !important;
  margin: 0 !important;
}

/* Logo tampil penuh sebagai banner */
.navbar-brand img,
.pkp_structure_head .navbar-brand img,
.pkp_site_name img {
  width: 100% !important;
  max-width: 100% !important;
  max-height: none !important;
  height: auto !important;
  display: block !important;
  margin: 0 !important;
  object-fit: contain !important;
  image-rendering: auto !important;
}

/* Navbar collapse full width */
.navbar-collapse {
  width: 100% !important;
  float: none !important;
}

/* ══════════════════════════════
   4. NAVBAR NAVIGASI UTAMA
══════════════════════════════ */
.navbar,
.navbar-default,
.pkp_structure_head .navbar-default {
  background-color: var(--piweling-navy) !important;
  border: none !important;
  border-bottom: 4px solid var(--piweling-gold) !important;
  min-height: 56px !important;
  box-shadow: var(--shadow) !important;
}

/* Menu items */
.navbar-default .navbar-nav > li > a {
  color: var(--piweling-white) !important;
  font-weight: 700 !important;
  font-size: 13px !important;
  text-transform: uppercase !important;
  letter-spacing: 1.2px !important;
  padding: 18px 16px !important;
  transition: all var(--transition) !important;
  border-bottom: 3px solid transparent !important;
}

.navbar-default .navbar-nav > li > a:hover,
.navbar-default .navbar-nav > li > a:focus {
  color: var(--piweling-gold) !important;
  background: rgba(255,255,255,0.08) !important;
  border-bottom: 3px solid var(--piweling-gold) !important;
}

/* Menu aktif */
.navbar-default .navbar-nav > li.active > a,
.navbar-default .navbar-nav > li.current > a {
  color: var(--piweling-gold) !important;
  background: rgba(218,165,32,0.15) !important;
  border-bottom: 3px solid var(--piweling-gold) !important;
}

/* ══════════════════════════════
   5. SEMBUNYIKAN SEARCH BAR
══════════════════════════════ */
.navbar-form,
.navbar-right > form,
form[role="search"],
.pkp_search,
.pkp_structure_head .search_public,
.pkp_navigation_user_wrapper .search,
.headerSearch,
.navbar-header .search_public,
.navbar-collapse .search_public,
.navbar-collapse > form,
div.navbar-form.navbar-right {
  display: none !important;
  visibility: hidden !important;
}

/* ══════════════════════════════
   6. KONTEN UTAMA & ARTIKEL
══════════════════════════════ */
.page_index_journal .description {
  font-size: 17px !important;
  line-height: 1.8 !important;
  color: #333 !important;
}

.obj_article_summary .title a {
  font-family: var(--font-heading) !important;
  font-size: 19px !important;
  color: var(--piweling-navy) !important;
  text-decoration: none !important;
  transition: color var(--transition) !important;
}

.obj_article_summary .title a:hover {
  color: var(--piweling-gold) !important;
  text-decoration: underline !important;
}

.obj_article_summary {
  background: var(--piweling-white) !important;
  border-radius: var(--radius) !important;
  padding: 20px !important;
  margin-bottom: 20px !important;
  box-shadow: var(--shadow) !important;
  border-left: 4px solid var(--piweling-gold) !important;
  transition: box-shadow var(--transition) !important;
}

.obj_article_summary:hover {
  box-shadow: 0 4px 16px rgba(0,31,91,0.18) !important;
}

.obj_article_summary .galleys_links a,
.obj_article_summary .obj_galley_link {
  background-color: var(--piweling-navy) !important;
  color: var(--piweling-white) !important;
  border-radius: var(--radius) !important;
  padding: 5px 14px !important;
  font-size: 12px !important;
  font-weight: 700 !important;
  text-transform: uppercase !important;
  text-decoration: none !important;
  margin-right: 6px !important;
  display: inline-block !important;
  transition: background var(--transition) !important;
}

.obj_article_summary .galleys_links a:hover {
  background-color: var(--piweling-gold) !important;
  color: var(--piweling-navy) !important;
}

/* ══════════════════════════════
   7. SIDEBAR / BLOK SAMPING
══════════════════════════════ */
.pkp_block {
  background: var(--piweling-white) !important;
  border-radius: var(--radius) !important;
  box-shadow: var(--shadow) !important;
  margin-bottom: 20px !important;
  overflow: hidden !important;
}

.pkp_block .title {
  background: var(--piweling-navy) !important;
  color: var(--piweling-white) !important;
  font-weight: 700 !important;
  font-size: 13px !important;
  text-transform: uppercase !important;
  letter-spacing: 1px !important;
  padding: 12px 16px !important;
  border-left: 5px solid var(--piweling-gold) !important;
  margin: 0 !important;
}

.pkp_block .content {
  padding: 14px 16px !important;
}

/* ══════════════════════════════
   8. HEADINGS
══════════════════════════════ */
h1, h2, h3,
.page_title,
.pkp_page_title {
  font-family: var(--font-heading) !important;
  color: var(--piweling-navy) !important;
}

h1, .page_title { font-size: 2rem !important; }
h2 { font-size: 1.6rem !important; }
h3 { font-size: 1.3rem !important; }

/* ══════════════════════════════
   9. TOMBOL UTAMA (CTA)
══════════════════════════════ */
.btn-primary,
.pkp_button_primary,
input[type="submit"] {
  background-color: var(--piweling-navy) !important;
  border-color: var(--piweling-navy) !important;
  color: var(--piweling-white) !important;
  font-weight: 700 !important;
  border-radius: var(--radius) !important;
  padding: 10px 24px !important;
  font-size: 14px !important;
  transition: all var(--transition) !important;
}

.btn-primary:hover,
.pkp_button_primary:hover,
input[type="submit"]:hover {
  background-color: var(--piweling-gold) !important;
  border-color: var(--piweling-gold) !important;
  color: var(--piweling-navy) !important;
}

/* ══════════════════════════════
   10. FOOTER
══════════════════════════════ */
.pkp_structure_footer,
footer {
  background-color: var(--piweling-navy) !important;
  border-top: 4px solid var(--piweling-gold) !important;
  color: rgba(255,255,255,0.85) !important;
  padding: 36px 30px !important;
  font-size: 14px !important;
  margin-top: 40px !important;
}

.pkp_structure_footer a,
footer a {
  color: var(--piweling-gold) !important;
  text-decoration: none !important;
}

.pkp_structure_footer a:hover,
footer a:hover {
  color: var(--piweling-white) !important;
  text-decoration: underline !important;
}

/* ══════════════════════════════
   11. RESPONSIVE MOBILE
══════════════════════════════ */
@media (max-width: 768px) {
  .navbar-brand img,
  .pkp_site_name img {
    max-height: none !important;
    max-width: 100% !important;
    width: 100% !important;
  }

  .navbar-default .navbar-nav > li > a {
    padding: 12px 15px !important;
    font-size: 13px !important;
  }

  .obj_article_summary {
    padding: 14px !important;
  }

  h1, .page_title { font-size: 1.5rem !important; }
}