/* ========================================
   PEF UNS — CUSTOM CSS
   Helix Ultimate + SP Page Builder
   ======================================== */

/* ========================================
   CSS VARIJABLE — paleta i fontovi
   ======================================== */
:root {
  --pef-plava: #1a2744;
  --pef-plava-svetlija: #243456;
  --pef-plava-tamna: #0d1520;
  --pef-zlatna: #c9a84c;
  --pef-zlatna-tamna: #8b6914;
  --pef-krem: #e8d5a3;
  --pef-pozadina: #f4f0e8;
  --pef-bela: #ffffff;

  --pef-font-serif: 'Gelasio', Georgia, 'Times New Roman', serif;
  --pef-font-sans: 'Inter', 'Open Sans', system-ui, sans-serif;

  --pef-radius-sm: 4px;
  --pef-radius-md: 8px;

  --bs-body-font-family: var(--pef-font-serif);
  --bs-font-sans-serif: var(--pef-font-serif);
}

/* ========================================
   GLOBALNI FONT
   ======================================== */
body {
  font-family: var(--pef-font-serif);
}

/* ========================================
   VIDEO FIX — 16:9 aspect ratio
   ======================================== */
.entry-video.embed-responsive.embed-responsive-16by9 {
  padding-bottom: 56.25% !important;
  height: 0 !important;
  position: relative !important;
  overflow: hidden !important;
}

.entry-video.embed-responsive.embed-responsive-16by9 iframe,
.entry-video.embed-responsive.embed-responsive-16by9 object,
.entry-video.embed-responsive.embed-responsive-16by9 embed {
  position: absolute !important;
  top: 0 !important;
  left: 0 !important;
  width: 100% !important;
  height: 100% !important;
}

/* ========================================
   NASLOVI ARTIKALA — Tamnoplava traka
   ======================================== */
.sppb-addon-article .sppb-article-info-wrap h3 {
  background: var(--pef-plava);
  margin: 0;
  padding: 14px 20px;
  border-bottom: 3px solid var(--pef-zlatna);
  min-height: 80px;
  display: flex;
  align-items: center;
}

.sppb-addon-article .sppb-article-info-wrap h3 a {
  color: var(--pef-krem);
  text-decoration: none;
  font-size: 1.1rem;
  line-height: 1.4;
}

.sppb-addon-article .sppb-article-info-wrap h3 a:hover {
  color: var(--pef-bela);
}

h1[itemprop="headline"] {
  background: var(--pef-plava);
  padding: 18px 24px;
  border-bottom: 3px solid var(--pef-zlatna);
  color: var(--pef-krem);
  font-size: 1.6rem;
  line-height: 1.4;
  margin-bottom: 1.5rem;
}

/* ========================================
   NASLOVI SEKCIJA — Zlatna traka (Header addon)
   ======================================== */
.sppb-addon-header {
  background: var(--pef-zlatna);
  padding: 14px 28px;
  border-left: 10px solid var(--pef-plava);
  margin-bottom: 20px;
  text-align: center;
  display: flex;
  align-items: center;
  justify-content: center;
}

.sppb-addon-header .sppb-addon-title {
  color: var(--pef-plava);
  text-transform: uppercase;
  letter-spacing: 3px;
  font-size: 22px;
  margin: 0;
  padding: 0;
  line-height: 1.4;
  font-weight: 500;
}

/* ========================================
   TEXT BLOCK — Obaveštenje
   Klasa: obavestenje
   ======================================== */
.obavestenje {
  border: 1px solid var(--pef-zlatna);
  border-radius: var(--pef-radius-md);
  overflow: hidden;
}

.obavestenje > div {
  background: var(--pef-pozadina);
  padding: 20px;
}

.obavestenje h3 {
  background: var(--pef-plava);
  margin: -20px -20px 20px -20px;
  padding: 12px 20px;
  border-bottom: 3px solid var(--pef-zlatna);
  font-size: 17px;
  color: var(--pef-krem);
  text-transform: uppercase;
  letter-spacing: 1.5px;
  line-height: 1.4;
}

.obavestenje p {
  color: var(--pef-plava);
  font-size: 15px;
  line-height: 1.7;
}

.obavestenje a {
  color: var(--pef-zlatna-tamna);
  font-weight: 500;
}

.obavestenje strong {
  color: var(--pef-plava);
  background: var(--pef-krem);
  padding: 4px 10px;
  border-radius: var(--pef-radius-sm);
  font-size: 14px;
}

/* ========================================
   ISTAKNUTO — kratki važni tekstovi
   Klasa: istaknuto
   ======================================== */
.istaknuto {
  position: relative;
  margin-top: 10px;
}

.istaknuto > div {
  background: var(--pef-plava);
  padding: 22px 24px;
  border-radius: var(--pef-radius-md);
  border: 1px solid var(--pef-zlatna);
  color: var(--pef-bela);
}

.istaknuto > div::before {
  content: "Важно";
  position: absolute;
  top: -10px;
  left: 20px;
  background: var(--pef-zlatna);
  padding: 2px 14px;
  border-radius: var(--pef-radius-sm);
  font-size: 11px;
  color: var(--pef-plava);
  font-weight: 500;
  text-transform: uppercase;
  letter-spacing: 1px;
}

.istaknuto h3,
.istaknuto h3 strong {
  font-size: 18px;
  color: var(--pef-zlatna);
  line-height: 1.4;
  margin: 0 0 8px;
}

.istaknuto h4,
.istaknuto h5,
.istaknuto p,
.istaknuto span,
.istaknuto div.sppb-addon-content,
.istaknuto li {
  font-size: 18px;
  color: var(--pef-bela);
  line-height: 1.6;
}

.istaknuto strong,
.istaknuto b {
  color: var(--pef-krem);
}

.istaknuto a {
  color: var(--pef-krem);
  text-decoration: underline;
}

/* ========================================
   FOTO — Akademski ram
   Klasa: foto
   ======================================== */
.foto .sppb-addon-single-image {
  background: var(--pef-plava);
  padding: 6px;
  border-radius: var(--pef-radius-sm);
  border: 1px solid var(--pef-zlatna);
  overflow: hidden;
  transition: box-shadow 0.3s ease;
}

.foto .sppb-addon-single-image:hover {
  box-shadow: 0 4px 20px rgba(201, 168, 76, 0.3);
}

.foto .sppb-addon-single-image img {
  border: 1px solid var(--pef-zlatna-tamna);
  transition: transform 0.4s ease;
}

.foto .sppb-addon-single-image:hover img {
  transform: scale(1.03);
}

/* ========================================
   HEADER / MENI — Tamnoplava pozadina
   ======================================== */
#sp-header {
  background: var(--pef-plava) !important;
  border-bottom: 3px solid var(--pef-zlatna);
  padding: 0 !important;
}

#sp-header .row {
  min-height: unset !important;
}

#sp-header .sp-menu-item > a {
  color: var(--pef-bela) !important;
  text-transform: uppercase;
  letter-spacing: 1px;
  font-weight: 400;
  transition: color 0.3s ease;
}

#sp-header .sp-menu-item > a:hover,
#sp-header .sp-menu-item.active > a {
  color: var(--pef-zlatna) !important;
}

#sp-header .sp-megamenu-parent {
  flex-wrap: nowrap !important;
  row-gap: 0;
  line-height: 1.2;
}

#sp-header .sp-megamenu-parent a {
  font-size: 12px !important;
  letter-spacing: 0.8px !important;
}

#sp-logo {
  background: transparent !important;
  padding-left: 20px !important;
}

#sp-logo .sp-column {
  justify-content: center !important;
  flex-direction: column !important;
}

#sp-logo span.logo a {
  color: var(--pef-bela) !important;
  font-size: 13px !important;
  font-weight: 700 !important;
  letter-spacing: 1px !important;
  white-space: normal !important;
  display: block !important;
  max-width: 280px !important;
  line-height: 1.3 !important;
}

#sp-logo span.logo-slogan {
  color: var(--pef-zlatna) !important;
  font-size: 13px !important;
  font-weight: 400 !important;
  letter-spacing: 1px !important;
  white-space: normal !important;
  display: block !important;
  max-width: 280px !important;
  line-height: 1.3 !important;
}

#sp-header input[type="search"],
#sp-header .search-query {
  background: rgba(255, 255, 255, 0.1) !important;
  border: 1px solid rgba(201, 168, 76, 0.4) !important;
  color: var(--pef-bela) !important;
  border-radius: var(--pef-radius-sm);
}

#sp-header input[type="search"]::placeholder {
  color: rgba(255, 255, 255, 0.5) !important;
}

#sp-header a[href*="webmail"],
#sp-header .sp-module a {
  color: var(--pef-zlatna) !important;
}

/* WEBMAIL — pomeren za 1cm od desne ivice */
#sp-header a[href*="webmail"] {
  margin-right: 1cm;
}

/* Dropdown podmeniji */
#sp-header .sp-dropdown .sp-dropdown-inner {
  background: var(--pef-plava) !important;
  border: 1px solid rgba(201, 168, 76, 0.3);
}

#sp-header .sp-dropdown .sp-menu-item a {
  color: rgba(255, 255, 255, 0.85) !important;
}

#sp-header .sp-dropdown .sp-menu-item a:hover {
  color: var(--pef-zlatna) !important;
  background: rgba(201, 168, 76, 0.1) !important;
}

/* Proširenje podmenija — pozadina automatski prati dužinu najduže stavke */
.sp-megamenu-parent .sp-dropdown {
  min-width: 280px;
  width: max-content;
  max-width: 480px;
}

.sp-megamenu-parent .sp-dropdown .sp-dropdown-inner {
  width: 100%;
}

.sp-megamenu-parent .sp-dropdown .sp-menu-item > a {
  padding: 10px 20px !important;
  white-space: nowrap;
}

/* ========================================
   HEADER — Desktop dimenzije (≥992px)
   ======================================== */
@media (min-width: 992px) {
  #sp-header {
    min-height: 150px !important;
    padding-top: 5px !important;
    padding-bottom: 5px !important;
  }

  #sp-header .logo,
  #sp-header .logo-image {
    height: 150px !important;
    max-height: 150px !important;
  }

  #sp-header .logo img,
  #sp-header img.logo-image {
    max-height: 120px !important;
    width: auto !important;
  }

  #sp-header .sp-megamenu-parent > li > a,
  #sp-header .sp-megamenu-parent > li > span {
    display: flex !important;
    align-items: center !important;
    min-height: 150px !important;
    padding: 0 12px !important;
  }

  .sp-slider-outer-stage,
  .sp-slider-outer-stage .sp-item {
    height: calc(100vh - 222px) !important;
  }
}
/* ========================================
   MOBILNI MENI — HAMBURGER FIX (<992px)
   ======================================== */
@media (max-width: 991px) {
  #sp-header .sp-megamenu-parent,
  #sp-header .sp-megamenu-wrapper {
    display: none !important;
  }

  #sp-header .col-7.col-md-3.col-lg-2.d-none.d-sm-block,
  #sp-header div[class*="d-none"][class*="d-sm-block"] {
    display: flex !important;
    align-items: center !important;
    width: auto !important;
    flex: 0 0 auto !important;
    min-width: 60px !important;
  }

  #offcanvas-toggler,
  a#offcanvas-toggler,
  #sp-header .offcanvas-toggler-left {
    display: flex !important;
    visibility: visible !important;
    opacity: 1 !important;
    align-items: center !important;
    justify-content: center !important;
    width: 44px !important;
    height: 44px !important;
    min-width: 44px !important;
    min-height: 44px !important;
    flex-shrink: 0 !important;
    background: var(--pef-zlatna) !important;
    border-radius: var(--pef-radius-sm) !important;
    z-index: 100 !important;
    text-decoration: none !important;
    margin-left: 10px !important;
  }

  #offcanvas-toggler .fa-bars,
  a#offcanvas-toggler .fa-bars,
  #sp-header .offcanvas-toggler-left .fa-bars {
    color: var(--pef-plava) !important;
    font-size: 22px !important;
    display: block !important;
  }

  #sp-header #sp-search,
  #sp-header .sp-module.search {
    display: none !important;
  }
}

/* ========================================
   PEF SLIDESHOW — custom baner
   ======================================== */
.pef-slider {
  position: relative;
  width: 100%;
  height: 450px;
  overflow: hidden;
  border-bottom: 4px solid var(--pef-zlatna);
}

.pef-slide {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  opacity: 0;
  transition: opacity 1s ease;
  display: flex;
  align-items: center;
  background-size: cover;
  background-position: center;
}

.pef-slide.active {
  opacity: 1;
  z-index: 2;
}

.pef-slide::before {
  content: "";
  position: absolute;
  inset: 0;
  z-index: 1;
}

.pef-slide-1,
.pef-slide-2,
.pef-slide-3,
.pef-slide-4 {
  background: linear-gradient(135deg, var(--pef-plava-tamna) 0%, var(--pef-plava) 40%, var(--pef-plava-svetlija) 70%, var(--pef-plava) 100%);
}

.pef-slide-1::before,
.pef-slide-2::before,
.pef-slide-3::before,
.pef-slide-4::before {
  background: radial-gradient(ellipse at 80% 50%, rgba(201, 168, 76, 0.15) 0%, transparent 60%);
}

.pef-slide-content {
  position: relative;
  z-index: 2;
  max-width: 700px;
  padding: 40px 60px;
}

.pef-slide-label {
  display: inline-flex;
  align-items: center;
  gap: 10px;
  margin-bottom: 16px;
  font-size: 12px;
  text-transform: uppercase;
  letter-spacing: 2.5px;
  font-family: var(--pef-font-sans);
  color: var(--pef-zlatna);
}

.pef-slide-label-line {
  width: 40px;
  height: 2px;
  background: var(--pef-zlatna);
}

.pef-slide-title {
  font-size: 2.4rem;
  color: var(--pef-bela);
  line-height: 1.2;
  margin: 0 0 6px;
  padding-left: 18px;
  border-left: 4px solid var(--pef-zlatna);
}

.pef-slide-text {
  font-size: 16px;
  color: rgba(255, 255, 255, 0.8);
  line-height: 1.7;
  margin: 12px 0 24px;
  padding-left: 22px;
}

.pef-slide-btn {
  display: inline-block;
  padding: 12px 30px;
  border-radius: var(--pef-radius-sm);
  font-size: 13px;
  text-transform: uppercase;
  letter-spacing: 1.5px;
  text-decoration: none;
  transition: all 0.3s ease;
  margin-left: 22px;
  background: var(--pef-zlatna);
  color: var(--pef-plava);
}

.pef-slide-btn:hover {
  background: var(--pef-krem);
  color: var(--pef-plava);
}

.pef-slide-quote {
  font-style: italic;
  font-size: 14px;
  color: rgba(255, 255, 255, 0.45);
  padding-left: 22px;
  margin: 0 0 20px;
}

.pef-slide-decor {
  position: absolute;
  right: 60px;
  top: 50%;
  transform: translateY(-50%);
  z-index: 2;
  opacity: 0.08;
  font-size: 12rem;
  color: var(--pef-bela);
  pointer-events: none;
  line-height: 1;
}

.pef-dots {
  position: absolute;
  bottom: 24px;
  left: 50%;
  transform: translateX(-50%);
  z-index: 10;
  display: flex;
  gap: 10px;
}

.pef-dot {
  width: 10px;
  height: 10px;
  border-radius: 50%;
  border: 1.5px solid rgba(255, 255, 255, 0.5);
  background: transparent;
  cursor: pointer;
  transition: all 0.3s ease;
  padding: 0;
}

.pef-dot.active {
  background: var(--pef-zlatna);
  border-color: var(--pef-zlatna);
}

.pef-dot:hover {
  border-color: var(--pef-zlatna);
}

.pef-arrow {
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  z-index: 10;
  width: 44px;
  height: 44px;
  border-radius: 50%;
  background: rgba(26, 39, 68, 0.6);
  border: 1px solid rgba(201, 168, 76, 0.4);
  color: var(--pef-bela);
  cursor: pointer;
  display: flex;
  align-items: center;
  justify-content: center;
  transition: all 0.3s ease;
  font-size: 18px;
  padding: 0;
}

.pef-arrow:hover {
  background: var(--pef-zlatna);
  border-color: var(--pef-zlatna);
}

.pef-arrow-left { left: 20px; }
.pef-arrow-right { right: 20px; }

.pef-progress {
  position: absolute;
  bottom: 0;
  left: 0;
  height: 3px;
  background: var(--pef-zlatna);
  z-index: 10;
  transition: width linear;
}

@media (max-width: 768px) {
  .pef-slider { height: 380px; }
  .pef-slide-content { padding: 30px 24px; }
  .pef-slide-title { font-size: 1.6rem; }
  .pef-slide-text { font-size: 14px; }
  .pef-slide-decor { display: none; }
  .pef-arrow { width: 36px; height: 36px; font-size: 14px; }
  .pef-arrow-left { left: 10px; }
  .pef-arrow-right { right: 10px; }
}

/* ========================================
   FOOTER — Tamnoplavi akademski stil
   ======================================== */
footer,
#sp-bottom {
  background: var(--pef-plava) !important;
  padding: 40px 0 30px;
  border-top: 3px solid var(--pef-zlatna);
}

footer .sp-module-title,
#sp-bottom .sp-module-title {
  color: var(--pef-zlatna) !important;
  font-size: 16px;
  text-transform: uppercase;
  letter-spacing: 2px;
  padding-bottom: 10px;
  border-bottom: 1px solid rgba(201, 168, 76, 0.3);
  margin-bottom: 14px;
}

footer .menu li a,
#sp-bottom .menu li a,
#sp-bottom .mod-menu.nav a {
  color: rgba(255, 255, 255, 0.8) !important;
  font-size: 14px;
  text-decoration: none;
  transition: all 0.3s ease;
  padding: 5px 0;
  display: block;
}

footer .menu li a:hover,
#sp-bottom .menu li a:hover,
#sp-bottom .mod-menu.nav a:hover {
  color: var(--pef-zlatna) !important;
  padding-left: 6px;
}

footer .menu li,
#sp-bottom .menu li,
#sp-bottom .mod-menu.nav li {
  list-style: none;
  border-bottom: 1px solid rgba(255, 255, 255, 0.05);
}

footer .menu li::before,
#sp-bottom .menu li::before {
  display: none;
}

/* Footer fix — Kalendar rada modul */
#sp-bottom .navbar-collapse {
  display: block !important;
}

#sp-bottom .navbar-toggler {
  display: none !important;
}

#sp-bottom .navbar {
  padding: 0;
}

/* ========================================
   PPM STRANICA — itemid-360
   ======================================== */
.itemid-360 .sppb-addon-text-block .sppb-addon-content > p > strong:only-child {
  display: block;
  background: var(--pef-plava);
  color: var(--pef-krem) !important;
  padding: 10px 18px;
  margin: 24px 0 12px;
  font-size: 16px;
  border-left: 4px solid var(--pef-zlatna);
}

.itemid-360 .sppb-addon-text-block .sppb-addon-content > p > strong > a {
  display: inline-block;
  background: var(--pef-zlatna);
  color: var(--pef-plava) !important;
  padding: 12px 24px;
  text-decoration: none;
  font-family: var(--pef-font-sans);
  font-size: 14px;
  font-weight: 500;
  text-transform: uppercase;
  letter-spacing: 1.5px;
  margin: 4px 0;
  transition: all 0.3s ease;
}

.itemid-360 .sppb-addon-text-block .sppb-addon-content > p > strong > a:hover {
  background: var(--pef-plava);
  color: var(--pef-zlatna) !important;
}

.itemid-360 .sppb-addon-text-block table {
  width: 100% !important;
  border-collapse: collapse;
  margin: 16px 0;
  font-family: var(--pef-font-sans);
  font-size: 14px;
}

.itemid-360 .sppb-addon-text-block table tr:first-child,
.itemid-360 .sppb-addon-text-block table tr:first-child td {
  background: var(--pef-plava) !important;
}

.itemid-360 .sppb-addon-text-block table tr:first-child td {
  padding: 10px 14px;
}

.itemid-360 .sppb-addon-text-block table tr:first-child td p,
.itemid-360 .sppb-addon-text-block table tr:first-child td strong,
.itemid-360 .sppb-addon-text-block table tr:first-child td em,
.itemid-360 .sppb-addon-text-block table tr:first-child td strong em,
.itemid-360 .sppb-addon-text-block table tr:first-child td em strong {
  color: var(--pef-krem) !important;
  font-style: normal !important;
  font-weight: 500;
}

.itemid-360 .sppb-addon-text-block table td {
  padding: 10px 14px;
  border-bottom: 1px solid rgba(26, 39, 68, 0.1);
}

.itemid-360 .sppb-addon-text-block table tr:nth-child(even) {
  background: var(--pef-pozadina);
}

.itemid-360 .sppb-addon-text-block table tr:hover {
  background: rgba(201, 168, 76, 0.1);
}

.itemid-360 .sppb-addon-text-block a[href^="mailto"] {
  color: var(--pef-zlatna) !important;
  font-weight: 500;
}

/* ========================================
   PHOCA DOWNLOAD
   ======================================== */
#phoca-dl-category-box .pd-ctitle {
  background: var(--pef-zlatna);
  padding: 14px 24px;
  border-left: 10px solid var(--pef-plava);
  color: var(--pef-plava) !important;
  text-transform: uppercase;
  letter-spacing: 2px;
  font-size: 18px;
  margin: 0 0 8px;
}

#phoca-dl-category-box .pd-subcategory small {
  display: none;
}

#phoca-dl-category-box .pd-subcategory {
  background: var(--pef-plava);
  padding: 14px 20px;
  margin-bottom: 2px;
  border-left: 4px solid var(--pef-zlatna);
  transition: all 0.3s ease;
}

#phoca-dl-category-box .pd-subcategory:hover {
  background: var(--pef-plava-svetlija);
  padding-left: 24px;
}

#phoca-dl-category-box .pd-subcategory a {
  color: var(--pef-bela) !important;
  text-decoration: none;
  font-size: 15px;
}

#phoca-dl-category-box .pd-subcategory a:hover {
  color: var(--pef-zlatna) !important;
}

#phoca-dl-category-box .pd-filename {
  background: var(--pef-pozadina);
  padding: 12px 20px;
  margin-bottom: 2px;
  border-left: 4px solid var(--pef-zlatna);
  transition: all 0.3s ease;
}

#phoca-dl-category-box .pd-filename:hover {
  background: rgba(201, 168, 76, 0.15);
  border-left-color: var(--pef-plava);
}

#phoca-dl-category-box .pd-filename a {
  color: var(--pef-plava) !important;
  text-decoration: none;
  font-size: 15px;
}

#phoca-dl-category-box .pd-filename a:hover {
  color: var(--pef-zlatna) !important;
}

#phoca-dl-category-box .pd-document16 {
  background-image: none !important;
}

#phoca-dl-category-box .btn.btn-success,
#phoca-dl-category-box .pd-button-box-bt .btn {
  background: var(--pef-zlatna) !important;
  color: var(--pef-plava) !important;
  border: none !important;
  padding: 8px 20px;
  font-size: 13px;
  font-weight: 500;
  text-transform: uppercase;
  letter-spacing: 1px;
  border-radius: var(--pef-radius-sm);
  transition: all 0.3s ease;
}

#phoca-dl-category-box .btn.btn-success:hover,
#phoca-dl-category-box .pd-button-box-bt .btn:hover {
  background: var(--pef-plava) !important;
  color: var(--pef-zlatna) !important;
}

#phoca-dl-category-box .pd-filenamebox-bt {
  padding: 8px 0;
}

#phoca-dl-category-box .pd-row2-bp {
  display: none;
}

#phoca-dl-category-box .pagination {
  background: var(--pef-plava);
  padding: 14px 20px;
  color: var(--pef-krem);
  font-size: 14px;
  display: flex;
  align-items: center;
  gap: 12px;
  margin-top: 20px;
}

#phoca-dl-category-box .pagination select.form-select {
  background: rgba(255, 255, 255, 0.1) !important;
  border: 1px solid rgba(201, 168, 76, 0.4) !important;
  color: var(--pef-bela) !important;
  font-size: 14px;
  padding: 6px 12px;
  border-radius: var(--pef-radius-sm);
}

div[style*="text-align:right"][style*="color:#ccc"] {
  display: none !important;
}

.pd-cb {
  display: none;
}

/* ========================================
   KONTAKT STRANICA — itemid-358
   ======================================== */
.itemid-358 .sppb-addon-accordion .sppb-panel {
  border: none !important;
  margin-bottom: 4px;
}

.itemid-358 .sppb-addon-accordion .sppb-panel-heading {
  background: var(--pef-plava) !important;
  padding: 14px 20px !important;
  border-left: 4px solid var(--pef-zlatna);
  border-radius: 0 !important;
}

.itemid-358 .sppb-addon-accordion .sppb-panel-heading a,
.itemid-358 .sppb-addon-accordion .sppb-panel-heading button,
.itemid-358 .sppb-addon-accordion .sppb-panel-title,
.itemid-358 .sppb-addon-accordion .sppb-panel-heading * {
  color: var(--pef-zlatna) !important;
  font-size: 15px !important;
  text-transform: uppercase;
  letter-spacing: 1.5px;
  text-decoration: none;
}

.itemid-358 .sppb-addon-accordion .sppb-panel-body {
  background: var(--pef-pozadina) !important;
  padding: 16px 20px !important;
  border-left: 4px solid var(--pef-zlatna);
  border-radius: 0 !important;
}

.itemid-358 .sppb-addon-text-block .sppb-addon-content {
  font-size: 15px;
  color: var(--pef-plava);
  line-height: 1.7;
}

.itemid-358 .sppb-addon-text-block h4 {
  color: var(--pef-plava) !important;
  font-size: 16px;
  font-weight: 500;
}

.itemid-358 .sppb-addon-text-block a[href^="mailto"] {
  color: var(--pef-zlatna) !important;
  font-weight: 500;
  text-decoration: none;
}

.itemid-358 .sppb-addon-text-block a[href^="mailto"]:hover {
  color: var(--pef-plava) !important;
  text-decoration: underline;
}

.itemid-358 .sppb-addon-text-block strong {
  color: var(--pef-plava);
  font-size: 16px;
}

/* Galerija — album stil */
.itemid-358 .sppb-addon-gallery .sppb-gallery.clearfix {
  display: grid !important;
  grid-template-columns: repeat(5, 1fr);
  gap: 4px;
  padding: 4px;
  list-style: none;
  background: var(--pef-plava);
  float: none !important;
}

.itemid-358 .sppb-addon-gallery .sppb-gallery.clearfix::before,
.itemid-358 .sppb-addon-gallery .sppb-gallery.clearfix::after {
  display: none !important;
}

.itemid-358 .sppb-addon-gallery .sppb-gallery li {
  overflow: hidden;
  height: 160px;
  transition: all 0.3s ease;
  float: none !important;
  width: auto !important;
  padding: 0 !important;
  margin: 0 !important;
  display: block !important;
}

.itemid-358 .sppb-addon-gallery .sppb-gallery li:hover {
  opacity: 0.85;
}

.itemid-358 .sppb-addon-gallery .sppb-gallery li a {
  display: block;
  width: 100%;
  height: 100%;
}

.itemid-358 .sppb-addon-gallery .sppb-gallery li img {
  width: 100% !important;
  height: 100% !important;
  object-fit: cover;
  transition: transform 0.4s ease;
}

.itemid-358 .sppb-addon-gallery .sppb-gallery li:hover img {
  transform: scale(1.08);
}

@media (max-width: 768px) {
  .itemid-358 .sppb-addon-gallery .sppb-gallery.clearfix {
    grid-template-columns: repeat(3, 1fr);
  }
}

@media (max-width: 480px) {
  .itemid-358 .sppb-addon-gallery .sppb-gallery.clearfix {
    grid-template-columns: repeat(2, 1fr);
  }
}

/* ========================================
   ONLINE PRIJAVA ISPITA — itemid-440
   ======================================== */
.itemid-440 h1.pef-page-title {
  background: var(--pef-plava);
  border-left: 10px solid var(--pef-zlatna);
  padding: 14px 24px;
  font-size: 18px;
  text-transform: uppercase;
  letter-spacing: 2px;
  margin: 0 0 16px;
}

.itemid-440 h1.pef-page-title a {
  color: var(--pef-krem) !important;
  text-decoration: none;
}

.itemid-440 h1.pef-page-title a:hover {
  color: var(--pef-bela) !important;
}

.itemid-440 .sppb-addon-text-block table {
  width: 100% !important;
  border-collapse: collapse;
  margin: 16px 0;
  font-size: 14px;
}

.itemid-440 .sppb-addon-text-block table td {
  background: var(--pef-pozadina) !important;
  padding: 16px 20px;
  border: none !important;
  border-bottom: 2px solid var(--pef-bela) !important;
  border-left: 4px solid var(--pef-zlatna) !important;
  color: var(--pef-plava);
  vertical-align: top;
  line-height: 1.7;
}

.itemid-440 .sppb-addon-text-block table td ul {
  padding-left: 16px;
  margin: 0;
}

.itemid-440 .sppb-addon-text-block table td ul li {
  margin-bottom: 6px;
  color: var(--pef-plava);
}

.itemid-440 .sppb-addon-text-block a[href^="mailto"] {
  color: var(--pef-zlatna) !important;
  font-weight: 500;
  text-decoration: none;
}

.itemid-440 .sppb-addon-text-block a[href^="mailto"]:hover {
  text-decoration: underline;
}

.itemid-440 .sppb-addon-text-block a[href*="images"] {
  color: var(--pef-zlatna) !important;
  font-weight: 500;
  text-decoration: none;
  border-bottom: 1px solid var(--pef-zlatna);
}

.itemid-440 .sppb-addon-text-block strong {
  color: var(--pef-plava);
}

.itemid-440 .sppb-addon-text-block .sppb-addon-content {
  font-size: 15px;
  color: var(--pef-plava);
  line-height: 1.7;
}

/* ========================================
   UPIS NA OSNOVNE STUDIJE — itemid-475
   ======================================== */
.itemid-475 .sppb-addon-text-block h1 {
  background: var(--pef-plava) !important;
  border-left: 10px solid var(--pef-zlatna) !important;
  padding: 14px 24px !important;
  font-size: 18px !important;
  color: var(--pef-krem) !important;
  text-transform: uppercase;
  letter-spacing: 2px;
  text-align: left !important;
  margin: 0 0 16px;
}

.itemid-475 .sppb-addon-text-block h1 strong {
  color: var(--pef-krem) !important;
  font-weight: 500;
}

.itemid-475 .sppb-addon-text-block h2,
.itemid-475 .sppb-addon-text-block h3,
.itemid-476 .sppb-addon-text-block h2,
.itemid-476 .sppb-addon-text-block h3 {
  background: var(--pef-plava);
  padding: 10px 18px;
  border-left: 4px solid var(--pef-zlatna);
  font-size: 16px;
  color: var(--pef-krem) !important;
  margin: 24px 0 12px;
}

.itemid-475 .sppb-addon-text-block .sppb-addon-content,
.itemid-476 .sppb-addon-text-block .sppb-addon-content {
  font-size: 15px;
  color: var(--pef-plava);
  line-height: 1.7;
}

.itemid-475 .sppb-addon-text-block ul,
.itemid-476 .sppb-addon-text-block ul {
  padding-left: 20px;
}

.itemid-475 .sppb-addon-text-block ul li,
.itemid-476 .sppb-addon-text-block ul li {
  margin-bottom: 6px;
  color: var(--pef-plava);
  line-height: 1.7;
}

.itemid-475 .sppb-addon-text-block a,
.itemid-476 .sppb-addon-text-block a {
  color: var(--pef-zlatna) !important;
  text-decoration: none;
  font-weight: 500;
}

.itemid-475 .sppb-addon-text-block a:hover,
.itemid-476 .sppb-addon-text-block a:hover {
  color: var(--pef-plava) !important;
  text-decoration: underline;
}

.itemid-475 .sppb-addon-text-block strong,
.itemid-476 .sppb-addon-text-block strong {
  color: var(--pef-plava);
}

/* ========================================
   UPIS NA MASTER STUDIJE — itemid-476
   ======================================== */
.itemid-476 .sppb-addon-header {
  background: var(--pef-plava) !important;
  border-left: 10px solid var(--pef-zlatna) !important;
  padding: 14px 24px !important;
  text-align: left !important;
}

.itemid-476 .sppb-addon-header .sppb-addon-title {
  color: var(--pef-krem) !important;
  font-size: 18px !important;
  text-transform: uppercase;
  letter-spacing: 2px;
  margin: 0 !important;
}

/* ========================================
   DUGMAD — SP Page Builder globalno
   ======================================== */
.sppb-btn.sppb-btn-secondary,
.sppb-btn.sppb-btn-primary {
  background: var(--pef-zlatna) !important;
  color: var(--pef-plava) !important;
  border: none !important;
  padding: 12px 28px !important;
  font-size: 14px !important;
  font-weight: 500 !important;
  text-transform: uppercase;
  letter-spacing: 1.5px;
  border-radius: var(--pef-radius-sm) !important;
  transition: all 0.3s ease !important;
  text-decoration: none !important;
}

.sppb-btn.sppb-btn-primary {
  border: 2px solid var(--pef-zlatna) !important;
}

.sppb-btn.sppb-btn-secondary:hover,
.sppb-btn.sppb-btn-primary:hover {
  background: var(--pef-plava) !important;
  color: var(--pef-zlatna) !important;
  border-color: var(--pef-plava) !important;
}

.sppb-btn.sppb-btn-default,
.sppb-btn.sppb-btn-success {
  background: var(--pef-plava) !important;
  color: var(--pef-krem) !important;
  border: none !important;
  padding: 12px 28px !important;
  font-size: 14px !important;
  font-weight: 500 !important;
  text-transform: uppercase;
  letter-spacing: 1.5px;
  border-radius: var(--pef-radius-sm) !important;
  transition: all 0.3s ease !important;
  text-decoration: none !important;
}

.sppb-btn.sppb-btn-success {
  color: var(--pef-zlatna) !important;
  border: 2px solid var(--pef-zlatna) !important;
}

.sppb-btn.sppb-btn-default:hover,
.sppb-btn.sppb-btn-success:hover {
  background: var(--pef-zlatna) !important;
  color: var(--pef-plava) !important;
}

/* ========================================
   KATEDRE I KONTAKT KATEGORIJE
   ======================================== */
.com-contact-categories h2,
.com-contact-category h2 {
  background: var(--pef-zlatna);
  padding: 14px 24px;
  border-left: 10px solid var(--pef-plava);
  color: var(--pef-plava) !important;
  text-transform: uppercase;
  letter-spacing: 2px;
  font-size: 18px;
  margin: 0 0 16px;
}

.categories-list.list-group {
  border: none !important;
  display: grid !important;
  grid-template-columns: repeat(3, 1fr);
  gap: 4px;
}

@media (max-width: 768px) {
  .categories-list.list-group {
    grid-template-columns: 1fr;
  }
}

.categories-list .list-group-item {
  background: var(--pef-plava) !important;
  border: none !important;
  margin-bottom: 0;
  padding: 0 !important;
  border-left: 4px solid var(--pef-zlatna) !important;
  transition: all 0.3s ease;
  min-height: 100px;
  display: flex;
  align-items: center;
}

.categories-list .list-group-item:hover {
  background: var(--pef-plava-svetlija) !important;
  padding-left: 4px !important;
}

.categories-list .list-group-item h5 {
  margin: 0;
}

.categories-list .list-group-item h5 a {
  color: var(--pef-zlatna) !important;
  text-decoration: none;
  font-size: 17px;
  display: block;
  padding: 14px 20px;
  text-transform: uppercase;
  letter-spacing: 1.5px;
}

.com-contact-category #contactList {
  border: none !important;
  border-collapse: separate;
  border-spacing: 0 4px;
}

.com-contact-category #contactList tbody tr {
  background: var(--pef-pozadina) !important;
  transition: all 0.3s ease;
}

.com-contact-category #contactList tbody tr:hover {
  background: rgba(201, 168, 76, 0.15) !important;
}

.com-contact-category #contactList th.list-title {
  background: transparent !important;
  border: none !important;
  padding: 14px 20px;
  border-left: 4px solid var(--pef-zlatna) !important;
  vertical-align: middle;
}

.com-contact-category #contactList th.list-title a {
  color: var(--pef-plava) !important;
  font-size: 15px;
  text-decoration: none;
  font-weight: 500;
}

.com-contact-category #contactList th.list-title a:hover {
  color: var(--pef-zlatna) !important;
}

.com-contact-category #contactList td {
  background: transparent !important;
  border: none !important;
  padding: 14px 20px;
  color: var(--pef-plava) !important;
  font-size: 14px;
  line-height: 1.7;
  vertical-align: middle;
}

.com-contact-contact .contact-address,
.com-contact-contact .contact-miscinfo,
.com-contact-contact .contact-links {
  font-size: 15px;
  color: var(--pef-plava);
}

.com-contact-contact h2 {
  background: var(--pef-plava);
  padding: 14px 24px;
  border-left: 10px solid var(--pef-zlatna);
  color: var(--pef-krem) !important;
  font-size: 18px;
  text-transform: uppercase;
  letter-spacing: 2px;
  margin: 0 0 16px;
}

.com-contact-categories ol.breadcrumb,
.com-contact-category ol.breadcrumb {
  background: var(--pef-pozadina);
  padding: 10px 20px;
  border-left: 4px solid var(--pef-zlatna);
  font-size: 14px;
}

.com-contact-categories ol.breadcrumb a,
.com-contact-category ol.breadcrumb a {
  color: var(--pef-plava) !important;
  text-decoration: none;
}

.com-contact-categories ol.breadcrumb a:hover,
.com-contact-category ol.breadcrumb a:hover {
  color: var(--pef-zlatna) !important;
}

/* ========================================
   POJEDINAČNI KONTAKT — profil profesora
   ======================================== */
.com-contact.contact .page-header {
  background: var(--pef-plava);
  padding: 20px 28px;
  border-left: 10px solid var(--pef-zlatna);
  margin-bottom: 0;
}

.com-contact.contact .page-header h1 {
  color: var(--pef-krem) !important;
  font-size: 24px;
  margin: 0;
}

.com-contact.contact > h3 {
  background: var(--pef-zlatna);
  padding: 8px 28px;
  margin: 0 0 24px;
  font-size: 13px !important;
  color: var(--pef-plava) !important;
  text-transform: uppercase;
  letter-spacing: 2px;
  font-weight: 500;
  border-left: 10px solid var(--pef-plava);
}

.com-contact.contact .contact-info {
  background: var(--pef-pozadina);
  padding: 24px;
  border-left: 4px solid var(--pef-zlatna);
  margin-bottom: 16px;
}

.com-contact.contact .contact-position {
  background: var(--pef-pozadina);
  padding: 12px 24px;
  border-left: 4px solid var(--pef-zlatna);
  margin-bottom: 4px !important;
  font-size: 15px;
  color: var(--pef-plava);
}

.com-contact.contact .contact-position strong {
  color: var(--pef-plava);
  font-weight: 500;
}

.com-contact.contact .contact-address,
.com-contact.contact .contact-telephone,
.com-contact.contact .contact-mobile,
.com-contact.contact .contact-fax {
  font-size: 15px;
  color: var(--pef-plava);
}

.com-contact.contact .fas {
  color: var(--pef-zlatna) !important;
  font-size: 16px;
}

.com-contact.contact .contact-emailto a,
.com-contact.contact joomla-hidden-mail a {
  color: var(--pef-zlatna) !important;
  text-decoration: none;
  font-size: 15px;
  font-weight: 500;
}

.com-contact.contact .contact-emailto a:hover,
.com-contact.contact joomla-hidden-mail a:hover {
  color: var(--pef-plava) !important;
  text-decoration: underline;
}

.com-contact.contact .contact-miscinfo {
  background: var(--pef-pozadina);
  padding: 20px 24px;
  border-left: 4px solid var(--pef-zlatna);
  margin-top: 16px;
  font-size: 15px;
  color: var(--pef-plava);
  line-height: 1.7;
}

.com-contact.contact .contact-form {
  margin-top: 24px;
}

.com-contact.contact .contact-form .btn {
  background: var(--pef-zlatna) !important;
  color: var(--pef-plava) !important;
  border: none !important;
  padding: 12px 28px;
  font-size: 14px;
  font-weight: 500;
  text-transform: uppercase;
  letter-spacing: 1.5px;
  border-radius: var(--pef-radius-sm);
  transition: all 0.3s ease;
}

.com-contact.contact .contact-form .btn:hover {
  background: var(--pef-plava) !important;
  color: var(--pef-zlatna) !important;
}

/* ========================================
   ARTIKAL INTRO SLIKA
   ======================================== */
.article-intro-image {
  float: none !important;
  width: 100% !important;
}

.article-intro-image img {
  width: 100% !important;
  height: auto !important;
}

/* ========================================
   CATEGORY LIST — tabela artikala
   ======================================== */
.category-list .control-label,
.category-list label[for="filter_search"],
.category-list #adminForm > div:first-child > span,
.category-list fieldset legend {
  display: none !important;
}

.category-list #adminForm .d-flex {
  margin-bottom: 20px;
}

.category-list #filter_search {
  border: 1px solid #c8d6e5;
  border-radius: var(--pef-radius-sm);
  padding: 7px 12px;
  font-size: 13px;
  color: #2c3e50;
}

.category-list #filter_search::placeholder {
  color: transparent;
  font-size: 0;
}

.category-list #adminForm button[type="submit"] {
  background: #1a5fa8;
  color: var(--pef-bela);
  border: none;
  border-radius: var(--pef-radius-sm);
  padding: 7px 18px;
  font-size: 0 !important;
  letter-spacing: 0.05em;
  cursor: pointer;
}

.category-list button[type="submit"]::after {
  content: "Претрага";
  font-size: 12px;
}

table.category {
  width: 100%;
  border-collapse: collapse;
}

table.category tr.cat-list-row0,
table.category tr.cat-list-row1 {
  border-bottom: 1px solid #e8eef4;
}

table.category tr.cat-list-row0:first-child,
table.category tr.cat-list-row1:first-child {
  border-top: 1px solid #e8eef4;
}

table.category tr.cat-list-row0:hover,
table.category tr.cat-list-row1:hover {
  background: #f5f8fc;
}

table.category td.list-title {
  padding: 12px 0;
  font-size: 14px;
}

table.category td.list-title a {
  color: #1a5fa8;
  text-decoration: none;
  line-height: 1.5;
  font-size: 16px !important;
}

table.category td.list-title a:hover {
  color: #154d8a;
  text-decoration: underline;
}

table.category td.list-date {
  font-size: 13px !important;
  color: #7f8c9a;
  white-space: nowrap;
  padding: 12px 0 12px 16px;
  text-align: right;
}

table.category tr.cat-list-row0.rowhead,
table.category thead {
  display: none;
}
body.view-article #mod-custom190 {
    display: none !important;
}
.konkurs-uzan {
  max-width: 900px;
  margin-left: auto;
  margin-right: auto;
}
@media (max-width: 600px){
  .pi-rokovi table,
  .pi-rokovi tbody{ display: block; width: 100%; }
  .pi-rokovi tr{ display: flex; flex-wrap: wrap; }
  .pi-rokovi td:first-child{ flex: 1 1 0%; min-width: 0; }
  .pi-rokovi td:last-child{ flex: 0 0 auto; align-self: flex-start; white-space: normal !important; text-align: right !important; max-width: 45%; }
  .pi-rokovi td > div{ white-space: nowrap; }
}
@media (max-width: 820px){
  .baner-row #mod-custom190{
    padding: 8px 0 !important;
  }
  .baner-row #mod-custom190 iframe{
    border-radius: 10px !important;
    box-shadow: 0 6px 20px rgba(26, 39, 68, 0.18);
  }
}
/* Baner Упиши Педагошки — samo na početnoj strani */
#mod-custom193 { display: none !important; }
body.view-page.itemid-228 #mod-custom193 { display: block !important; }