/*
 * STEKOM theme overrides — flat style mengikuti stekom.ac.id
 * Dimuat setelah devdesk.css.
 */

:root {
  --stekom-navy: #002855;
  --stekom-navy-dark: #001035;
  --stekom-navy-deep: #00071a;
  --stekom-orange: #FFA02E;
  --stekom-surface: #f0f4f9;
  --stekom-border: #e2e8f0;
  --stekom-text: #0a0e1a;
  --stekom-muted: #64748b;

  --bs-border-radius: 0;
  --bs-border-radius-sm: 0;
  --bs-border-radius-lg: 0;
  --bs-border-radius-xl: 0;
  --bs-border-radius-xxl: 0;
  --bs-box-shadow: none;
  --bs-box-shadow-sm: none;
  --bs-box-shadow-lg: none;
}

body {
  font-family: "DM Sans", system-ui, sans-serif;
  color: #334155;
}

h1, .h1, h2, .h2, h3, .h3, h4, .h4, h5, .h5, h6, .h6 {
  font-family: "DM Sans", system-ui, sans-serif;
  color: var(--stekom-text);
  font-weight: 700;
  letter-spacing: -0.01em;
}

/* ---------- Flat: tanpa sudut membulat & bayangan ---------- */
.btn, .card, .card-img-top, .card-header, .card-footer,
.form-control, .form-select, .input-group-text,
.dropdown-menu, .alert, .badge, .modal-content, .list-group,
.list-group-item, .nav-pills .nav-link, .pagination .page-link,
.accordion, .accordion-item, .accordion-button, .toast, .popover, .tooltip-inner,
.img-thumbnail, .rounded, .rounded-1, .rounded-2, .rounded-3, .rounded-4, .rounded-5,
.rounded-top, .rounded-bottom, .rounded-start, .rounded-end,
.search-form .search-input, .search-form .search-btn,
.news-banner, .side-bar .card, img {
  border-radius: 0 !important;
}

.shadow, .shadow-sm, .shadow-lg, .card, .btn, .dropdown-menu, .news-banner:hover {
  box-shadow: none !important;
}

.card {
  border: 1px solid var(--stekom-border);
  background: #fff;
}

.card:hover {
  border-color: var(--stekom-navy);
}

/* ---------- Tombol ---------- */
.btn {
  font-weight: 700;
  font-size: 0.8125rem;
  letter-spacing: 0.08em;
  text-transform: uppercase;
}

.btn-primary {
  --bs-btn-bg: var(--stekom-navy);
  --bs-btn-border-color: var(--stekom-navy);
  --bs-btn-hover-bg: var(--stekom-navy-dark);
  --bs-btn-hover-border-color: var(--stekom-navy-dark);
}

.btn-primary {
  background: var(--stekom-navy);
}

.btn-primary:hover {
  background: var(--stekom-navy-dark);
}

.search-form .search-btn {
  background: var(--stekom-orange);
}

.search-form .search-btn:hover {
  background: var(--stekom-navy-dark);
}

/* Judul konten: buang inline text-shadow lama */
.main-section-heading {
  text-shadow: none !important;
  letter-spacing: -0.02em !important;
  font-weight: 800;
}

.btn-warning {
  --bs-btn-color: var(--stekom-navy-deep);
  --bs-btn-bg: var(--stekom-orange);
  --bs-btn-border-color: var(--stekom-orange);
}

/* ---------- Topbar ---------- */
.topbar {
  background: var(--stekom-navy-dark);
  border-top: 3px solid var(--stekom-orange);
  color: rgba(255, 255, 255, 0.85);
  font-size: 0.75rem;
  font-weight: 500;
  padding: 0.5rem 0;
}

.topbar strong {
  color: #fff;
  font-weight: 700;
}

.topbar-sep {
  margin: 0 0.75rem;
  opacity: 0.4;
}

.topbar-links a {
  color: #fff;
  font-weight: 700;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  text-decoration: none;
}

.topbar-links a:hover {
  color: var(--stekom-orange);
}

/* ---------- Navbar putih ---------- */
.site-navbar {
  background: #fff;
  border-bottom: 1px solid var(--stekom-border);
  position: sticky;
  top: 0;
  z-index: 1030;
}

.site-navbar .navbar {
  padding: 0.75rem 0;
}

.site-navbar .brand-text {
  color: var(--stekom-navy);
  font-size: 1rem;
  font-weight: 800;
  letter-spacing: 0.08em;
  border-left: 1px solid var(--stekom-border);
  padding-left: 0.75rem;
}

.site-navbar .navbar .nav-link {
  color: var(--stekom-text);
  font-size: 0.75rem;
  font-weight: 700;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  padding: 0.5rem 0.875rem;
}

.site-navbar .navbar .nav-link:hover,
.site-navbar .navbar .nav-link.show {
  color: var(--stekom-navy);
  background: var(--stekom-surface);
}

.site-navbar .navbar .nav-link.active {
  color: var(--stekom-navy);
  background: var(--stekom-surface);
}

.site-navbar .navbar-toggler span {
  background-color: var(--stekom-navy);
}

.site-navbar .dropdown-menu,
.site-navbar .dropdown-menu.show {
  background: #fff;
  border: 1px solid var(--stekom-border);
  border-top: 3px solid var(--stekom-navy);
  padding: 0.25rem 0;
}

.site-navbar .dropdown-menu:before,
.site-navbar .dropdown-menu:after {
  display: none;
}

.site-navbar .dropdown-menu .dropdown-item,
.site-navbar .dropdown-menu.show .dropdown-item {
  color: var(--stekom-text);
  font-size: 0.8125rem;
  font-weight: 500;
  padding: 0.625rem 1.25rem;
}

.site-navbar .dropdown-menu .dropdown-item:hover,
.site-navbar .dropdown-menu.show .dropdown-item:hover {
  color: var(--stekom-navy);
  background: var(--stekom-surface);
}

.site-navbar .nav-cta {
  background: var(--stekom-orange);
  border: 1px solid var(--stekom-orange);
  color: var(--stekom-navy-deep);
  padding: 0.625rem 1.25rem;
  font-size: 0.75rem;
}

.site-navbar .nav-cta:hover {
  background: var(--stekom-navy);
  border-color: var(--stekom-navy);
  color: #fff;
}

/* ---------- Page header (hero) ---------- */
.page-header-wrapper {
  background: var(--stekom-navy);
  border-bottom: 3px solid var(--stekom-orange);
}

/* pola awan bulat tidak cocok dengan gaya flat */
.page-header-bg-pattern-holder {
  display: none;
}

.page-heading-holder {
  padding-top: 3.5rem;
  padding-bottom: 3.5rem;
}

.page-heading-holder .page-heading {
  font-size: clamp(1.875rem, 4vw, 3rem);
  letter-spacing: -0.03em;
  font-weight: 800;
}

.page-heading-holder .page-heading-sub {
  font-size: 1.0625rem;
  line-height: 1.6;
  color: rgba(255, 255, 255, 0.8);
}

/* ---------- Area konten ---------- */
.help-content-wrapper {
  background: var(--stekom-surface);
  padding-top: 2rem !important;
  padding-bottom: 2rem;
}

.help-content-wrapper .main-section {
  background: #fff;
  border: 1px solid var(--stekom-border);
  padding: 2rem;
  color: #334155;
}

@media (max-width: 575.98px) {
  .help-content-wrapper .main-section {
    padding: 1.25rem;
  }
}

/* Judul konten: satu garis tipis + aksen oranye pendek */
.main-section-heading {
  font-size: clamp(1.375rem, 2.4vw, 1.75rem) !important;
  border-bottom: 1px solid var(--stekom-border) !important;
  padding-bottom: 1rem !important;
}

.main-section-heading .position-absolute.bg-warning {
  display: none;
}

.main-section-heading::after {
  content: "";
  position: absolute;
  left: 0;
  bottom: -1px;
  width: 64px;
  height: 3px;
  background: var(--stekom-orange);
}

/* ---------- Sidebar ---------- */
.help-content-wrapper .side-bar-heading {
  font-size: 0.75rem;
  font-weight: 800;
  letter-spacing: 0.1em;
  text-transform: uppercase;
  color: #fff;
  background: var(--stekom-navy);
  padding: 0.75rem 1rem;
  margin: 0 !important;
}

.help-content-wrapper .side-bar-nav {
  background: #fff;
  border: 1px solid var(--stekom-border);
  border-top: 0;
  margin-bottom: 1.5rem;
  font-size: 0.875rem;
}

.help-content-wrapper .side-bar-nav .nav-item {
  margin: 0;
  border-bottom: 1px solid var(--stekom-border);
}

.help-content-wrapper .side-bar-nav .nav-item:last-child {
  border-bottom: 0;
}

.help-content-wrapper .side-bar-nav .nav-item a,
.help-content-wrapper .side-bar-nav .nav-item a.active {
  display: block;
  color: #334155;
  line-height: 1.4;
  padding: 0.625rem 1rem;
  border-left: 3px solid transparent;
}

.help-content-wrapper .side-bar-nav .nav-item a:hover {
  color: var(--stekom-navy);
  background: var(--stekom-surface);
  border-left-color: var(--stekom-navy);
}

.help-content-wrapper .side-bar-nav .nav-item a.active {
  color: var(--stekom-navy);
  font-weight: 700;
  background: var(--stekom-surface);
  border-left-color: var(--stekom-orange);
}


.help-content-wrapper .side-bar-nav .sidebar-nav-items {
  margin: 0;
  padding: 0;
}
