/**
 * Nadji Nekretninu - Brand Theme
 * SAMO boje iz vizuelnog identiteta (_logo):
 *   #1a3149 - primary (tamno plava)
 *   #2e587f - secondary (srednje plava)
 *   #f7b31b - accent (zlatna)
 *   #95bdd7 - light blue
 *   #ffffff - bela
 * Font: Wix Madefor Display
 */

/* Wix Madefor Display - @font-face */
@font-face {
  font-family: 'Wix Madefor Display';
  src: url('../fonts/WixMadeforDisplay-Regular.ttf') format('truetype');
  font-weight: 400;
  font-style: normal;
  font-display: swap;
}
@font-face {
  font-family: 'Wix Madefor Display';
  src: url('../fonts/WixMadeforDisplay-Medium.ttf') format('truetype');
  font-weight: 500;
  font-style: normal;
  font-display: swap;
}
@font-face {
  font-family: 'Wix Madefor Display';
  src: url('../fonts/WixMadeforDisplay-SemiBold.ttf') format('truetype');
  font-weight: 600;
  font-style: normal;
  font-display: swap;
}
@font-face {
  font-family: 'Wix Madefor Display';
  src: url('../fonts/WixMadeforDisplay-Bold.ttf') format('truetype');
  font-weight: 700;
  font-style: normal;
  font-display: swap;
}
@font-face {
  font-family: 'Wix Madefor Display';
  src: url('../fonts/WixMadeforDisplay-ExtraBold.ttf') format('truetype');
  font-weight: 800;
  font-style: normal;
  font-display: swap;
}

/* Brand CSS variables - SAMO 5 boja iz _logo */
:root {
  --primary-color: #1a3149;
  --primary-color-rgb: 26, 49, 73;
  --primary-color-2: #2e587f;
  --secondary-color: #2e587f;
  --secondary-color-rgb: 46, 88, 127;
  --accent-color: #f7b31b;
  --accent-color-rgb: 247, 179, 27;
  --light-blue: #95bdd7;
  --light-blue-rgb: 149, 189, 215;
  --bg-light: #ffffff;
  /* Izvedeno samo iz 5 boja */
  --tertiary-color: #ffffff;
  --quaternary-color: #95bdd7;
  --bg-dark-1: #1a3149;
  --bg-dark-2: #2e587f;
  --bg-dark-3: #1a3149;
  --bg-dark-1-rgb: 26, 49, 73;
  --bs-primary: #1a3149;
  --bs-secondary: #2e587f;
  --bs-success: #2e587f;
  --bs-info: #95bdd7;
  --bs-warning: #f7b31b;
  --bs-teal: #2e587f;
  --bs-green: #2e587f;
  --bs-body-color: #1a3149;
  --heading-font-color: #1a3149;
  --body-font-color-dark: rgba(255,255,255,0.9);
}

/* Tamne klase – samo #1a3149 i #2e587f */
.bg-dark-1,
.bg-dark-3,
.bg-dark.section-dark,
#wrapper .bg-dark.section-dark {
  background-color: #1a3149 !important;
  background: #1a3149 !important;
}
.bg-dark-2,
.bg-color-2,
.bg-color-secondary {
  background: #2e587f !important;
  background-color: #2e587f !important;
}

/* Font override - Wix Madefor Display */
* {
  --body-font: "Wix Madefor Display", "DM Sans", Helvetica, Arial, sans-serif;
  --heading-font: "Wix Madefor Display", "Jost", Helvetica, Arial, sans-serif;
}

body {
  font-family: var(--body-font) !important;
}

h1, h2, h3, h4, h5, h6, .heading-font, #mainmenu {
  font-family: var(--heading-font) !important;
}

/* Header i Footer – #1a3149 */
header.nn-header,
.nn-header,
header.section-dark.nn-header,
footer.nn-footer,
.nn-footer,
footer.section-dark.nn-footer,
footer,
.de_light footer,
.dark-scheme footer,
#subheader.section-dark,
#wrapper footer,
body footer {
  background: #1a3149 !important;
  background-color: #1a3149 !important;
}

/* Početna – jasno razdvojene sekcije (3 boje: #1a3149, #2e587f, #95bdd7, #ffffff) */
#wrapper {
  background-color: #ffffff !important;
  background: #ffffff !important;
}

/* Podrazumevano: sve sekcije bela */
#wrapper section,
section {
  background-color: #ffffff !important;
  background: #ffffff !important;
}

/* 1) Hero – tamno plava #1a3149 */
#section-hero.section-dark,
#section-hero,
section#section-hero {
  background: #1a3149 !important;
  background-color: #1a3149 !important;
}

/* 2) Traka pretrage – svetlo plava #95bdd7 (da se odmah vidi razlika) */
#wrapper section.nn-home-search,
section.nn-home-search {
  background: #95bdd7 !important;
  background-color: #95bdd7 !important;
}
section.nn-home-search .form-label,
section.nn-home-search h5 {
  color: #1a3149 !important;
}

/* 3) Popularne kategorije – bela #ffffff */
#section-featured,
#wrapper #section-featured {
  background: #ffffff !important;
  background-color: #ffffff !important;
}

/* 4) Izdvojeni oglasi – srednje plava #2e587f */
section.section-dark.bg-dark {
  background: #2e587f !important;
  background-color: #2e587f !important;
}

/* Kartice unutar sekcije – .bg-dark ostaje tamno #1a3149 */
.bg-dark {
  background-color: #1a3149 !important;
  background: #1a3149 !important;
}
.card-header.bg-dark {
  background: #1a3149 !important;
}

/* Footer - linkovi i ikone vidljivi (bela / akcent) */
footer a,
.nn-footer a,
footer.footer-light a,
footer .text-light a,
.nn-footer .text-light a {
  color: rgba(255,255,255,0.9) !important;
}
footer a:hover,
.nn-footer a:hover,
footer .text-white-50:hover,
.nn-footer .text-white-50:hover {
  color: var(--accent-color) !important;
}
footer .id-color,
.nn-footer .id-color {
  color: var(--accent-color) !important;
}
footer .subfooter,
.nn-footer .subfooter {
  border-top-color: rgba(255,255,255,0.15) !important;
  color: rgba(255,255,255,0.8) !important;
}
footer .subfooter a,
.nn-footer .subfooter a {
  color: rgba(255,255,255,0.9) !important;
}

/* Header tekst na belo */
header.nn-header .menu-item,
header.nn-header a,
header.nn-header .form-select,
header.nn-header .dropdown-toggle {
  color: rgba(255,255,255,0.9) !important;
}

/* Aktivna stavka menija – vidljiva (akcent #f7b31b) */
header.nn-header #mainmenu .menu-item.active {
  color: #f7b31b !important;
  font-weight: 600;
  border-bottom: 2px solid #f7b31b;
  padding-bottom: 2px;
}

header.nn-header .menu-item:hover {
  color: #f7b31b !important;
}

/* Korisnik dropdown - lebdeći meni: bela pozadina, tamni tekst; fiksirano da ne beži i da se može kliknuti */
header.nn-header .nn-user-menu {
  position: relative;
}
/* Isključi MDB ripple na dugmetu Korisnik – nema bele lebdeće površine pri kliku */
header.nn-header .nn-user-menu .ripple-wave,
.nn-user-menu .ripple-wave,
#nnUserDropdown .ripple-wave {
  display: none !important;
}
header.nn-header .nn-user-menu .dropdown-menu,
.nn-header .nn-user-menu .dropdown-menu {
  background: #fff !important;
  border: 1px solid rgba(0,0,0,0.1);
  box-shadow: 0 0.5rem 1rem rgba(0,0,0,0.15);
  padding: 0.25rem 0;
  margin-top: 0.25rem !important;
  min-width: 12rem;
  z-index: 1060;
  position: absolute;
}
header.nn-header .dropdown-menu .dropdown-item,
.nn-header .dropdown-item {
  color: var(--primary-color) !important;
  background: transparent;
  cursor: pointer;
  display: block;
  padding: 0.5rem 1rem;
}
header.nn-header .dropdown-menu .dropdown-item:hover,
.nn-header .dropdown-menu .dropdown-item:hover {
  background: rgba(149, 189, 215, 0.25) !important;
  color: #1a3149 !important;
}
/* Sprečava zatvaranje dok korisnik prelazi na stavke menija */
header.nn-header .nn-user-menu .dropdown-toggle::after {
  margin-left: 0.35em;
}

/* Desktop: Korisnik i Objavi oglas – u istoj liniji sa glavnim menijem */
@media (min-width: 993px) {
  header.nn-header .header-inner .de-flex {
    align-items: center;
  }
  header.nn-header .menu_side_area {
    align-items: center;
  }
  /* Korisnik – ista veličina kao stavke menija */
  header.nn-header .nn-user-btn {
    font-size: 16px !important;
    font-weight: 600;
    padding: 8px 8px !important;
    line-height: 1.4;
    white-space: nowrap;
  }
  header.nn-header .nn-user-btn i {
    margin-right: 4px;
  }
  /* Objavi oglas – ista veličina kao stavke menija */
  header.nn-header .nn-btn-publish {
    font-size: 16px !important;
    font-weight: 600;
    padding: 8px 14px !important;
    line-height: 1.2;
    white-space: nowrap !important;
    text-transform: none !important;
    letter-spacing: 0 !important;
  }
  header.nn-header .nn-btn-publish span,
  header.nn-header .nn-btn-publish .nn-btn-publish-text {
    display: inline !important;
    white-space: nowrap;
  }
  /* fx-slide: span inline-block da ne prelomi u dva reda */
  header.nn-header .nn-btn-publish.fx-slide span {
    display: inline-block !important;
    position: relative;
  }
}

/* Select zemlja / valuta - u headeru zatvoreni izgled beli tekst; otvorena lista tamni tekst na beloj */
header.nn-header .nn-header-select,
header.nn-header #region-select,
header.nn-header #currency-select {
  max-width: 140px;
  background: rgba(255,255,255,0.15) !important;
  color: #fff !important;
  border-color: rgba(255,255,255,0.35);
}
header.nn-header #currency-select { max-width: 90px; }
/* Opcije u select listi (kada se otvori) - tamni tekst na beloj da se vide */
header.nn-header #region-select option,
header.nn-header #currency-select option {
  background: #fff !important;
  color: var(--primary-color) !important;
}

/* CTA dugmad - Akcentna boja */
.btn-main,
.btn-main.fx-slide,
a.btn-main,
.nn-cta {
  background: var(--accent-color) !important;
  color: #1a3149 !important;
  border-color: var(--accent-color) !important;
}

.btn-main:hover,
a.btn-main:hover {
  background: #e5a215 !important;
  color: #1a3149 !important;
}

/* Cene - Akcentna boja */
.nn-price,
.price-row,
.property-card .price,
.id-color.price {
  color: var(--accent-color) !important;
}

/* TOP badge - Akcentna boja */
.nn-badge-top,
.promotion-2 .badge,
.badge-top {
  background: var(--accent-color) !important;
  color: #1a3149 !important;
}

/* Premium badge - monetizacija */
.nn-badge-premium,
.promotion-1 .badge {
  background: var(--accent-color) !important;
  color: #1a3149 !important;
}

/* Sticky Sidebar - stranica nekretnine */
.nn-sticky-sidebar {
  position: sticky;
  top: 100px;
}

/* Hero – tekst i tabovi iznad slidera, linkovi klikabilni */
#section-hero > .abs.w-80 {
  z-index: 10;
  pointer-events: none;
}
#section-hero > .abs.w-80 .container,
#section-hero > .abs.w-80 .nn-hero-tabs,
#section-hero > .abs.w-80 .nn-hero-tabs a,
#section-hero > .abs.w-80 .btn-main,
#section-hero > .abs.w-80 .btn-line,
#section-hero > .abs.w-80 a {
  pointer-events: auto;
}
#section-hero .mh-800 .swiper {
  z-index: 1;
}

/* Isključi MDB ripple na hero tabovima (Stanovi, Kuće, …) – nema bele animacije, link radi */
#section-hero .ripple-wave,
.nn-hero-tabs .ripple-wave {
  display: none !important;
}

/* Hero tabovi - grid layout */
.nn-hero-tabs {
  display: flex;
  flex-wrap: wrap;
  gap: 0.5rem;
}
.nn-hero-tabs .btn {
  flex: 0 0 auto;
}

/* Premium/LEVEL 1 - Zlatni okvir */
.promotion-1 {
  border: 2px solid var(--accent-color) !important;
  box-shadow: 0 0 0 1px var(--accent-color);
}

.promotion-1 .badge-crown::before {
  content: "\f005";
  font-family: "Font Awesome 6 Free";
  font-weight: 900;
  color: var(--accent-color);
  margin-right: 4px;
}

/* Interaktivni elementi - Sekundarna */
#mainmenu a.menu-item:hover,
a:hover,
.id-color,
.id-color:hover {
  color: var(--secondary-color) !important;
}

/* Linkovi i hover */
a {
  color: var(--secondary-color);
}

/* Scrollbar, selektovani filteri */
#filters a.selected,
.filters a.active {
  color: var(--accent-color) !important;
  border-color: var(--accent-color) !important;
}

/* ========== FORME NA CELOM SAJTU – čitljiv tekst ========== */
.form-control,
.form-select,
input[type="text"],
input[type="email"],
input[type="number"],
input[type="tel"],
input[type="search"],
input[type="password"],
textarea,
select {
  background-color: #fff !important;
  color: var(--primary-color) !important;
  border-color: rgba(var(--primary-color-rgb), 0.25);
}
.form-control::placeholder,
input::placeholder,
textarea::placeholder {
  color: rgba(var(--primary-color-rgb), 0.5) !important;
}
.form-control:focus,
.form-select:focus,
input:focus,
textarea:focus,
select:focus {
  border-color: var(--secondary-color);
  box-shadow: 0 0 0 0.2rem rgba(var(--secondary-color-rgb), 0.2);
}
/* Opcije u svim select listama – tamni tekst na beloj */
option {
  background: #fff !important;
  color: var(--primary-color) !important;
}
/* Header selecti ostaju beli tekst na tamnoj pozadini (specifičnost) */
header.nn-header .nn-header-select,
header.nn-header #region-select,
header.nn-header #currency-select {
  background: rgba(255,255,255,0.15) !important;
  color: #fff !important;
}
header.nn-header #region-select option,
header.nn-header #currency-select option {
  background: #fff !important;
  color: var(--primary-color) !important;
}

/* ========== DROPDOWN MENIJI (Bootstrap) – svuda ========== */
.dropdown-menu {
  background: #fff !important;
  border: 1px solid rgba(0,0,0,0.1);
  color: var(--primary-color) !important;
}
.dropdown-item {
  color: var(--primary-color) !important;
  background: transparent !important;
}
.dropdown-item:hover,
.dropdown-item:focus {
  background: rgba(149, 189, 215, 0.25) !important;
  color: #1a3149 !important;
}

/* ========== DUGMAD ========== */
.btn-primary {
  background: var(--primary-color) !important;
  border-color: var(--primary-color) !important;
  color: #fff !important;
}
.btn-primary:hover {
  background: var(--primary-color-2) !important;
  border-color: var(--primary-color-2) !important;
  color: #fff !important;
}
.btn-outline-primary {
  border-color: var(--primary-color);
  color: var(--primary-color);
}
.btn-outline-primary:hover {
  background: var(--primary-color);
  color: #fff !important;
}
.btn-secondary {
  background: var(--secondary-color) !important;
  border-color: var(--secondary-color) !important;
  color: #fff !important;
}

/* ========== PAGINACIJA ========== */
.page-link {
  color: var(--primary-color) !important;
  border-color: rgba(var(--primary-color-rgb), 0.3);
}
.page-link:hover {
  background: rgba(149, 189, 215, 0.25);
  color: #2e587f !important;
  border-color: rgba(26, 49, 73, 0.3);
}
.page-item.active .page-link {
  background: var(--primary-color) !important;
  border-color: var(--primary-color) !important;
  color: #fff !important;
}
.pagination .active a,
.pagination .active span {
  background: var(--primary-color) !important;
  border-color: var(--primary-color) !important;
  color: #fff !important;
}

/* ========== KARTICE I CARD HEADER ========== */
.card-header.bg-dark,
.card-header.bg-primary {
  background: var(--primary-color) !important;
  color: #fff !important;
  border-color: rgba(255,255,255,0.1);
}
.bg-primary {
  background-color: var(--primary-color) !important;
}
.text-primary {
  color: var(--primary-color) !important;
}
.border-primary {
  border-color: var(--primary-color) !important;
}

/* ========== SEKCIJA TAMNA (section-dark) – tekst beli ========== */
.section-dark,
.section-dark.text-light {
  color: rgba(255,255,255,0.9) !important;
}
.section-dark .form-control,
.section-dark .form-select {
  background: #fff !important;
  color: var(--primary-color) !important;
}
.section-dark .form-control::placeholder {
  color: rgba(var(--primary-color-rgb), 0.5) !important;
}

/* ========== LABEL I FORM LABEL ========== */
.form-label,
label {
  color: var(--primary-color) !important;
}
.section-dark .form-label,
.section-dark label {
  color: rgba(255,255,255,0.95) !important;
}

/* ========== ZABRANA ZELENE/TEAL – samo boje iz _logo ========== */
.bg-success,
.btn-success,
.alert-success,
.badge.bg-success,
.text-success {
  background-color: #2e587f !important;
  color: #fff !important;
  border-color: #2e587f !important;
}
.text-success {
  color: #2e587f !important;
  background: transparent !important;
}
.bg-teal,
.btn-teal,
.text-teal {
  background-color: #2e587f !important;
  color: #fff !important;
  border-color: #2e587f !important;
}
.text-teal {
  color: #2e587f !important;
  background: transparent !important;
}
/* Preloader, progress, de_countdown – brand boje umesto zelene */
#preloader,
.jpreBar,
.de_countdown,
[class*="gradient"] {
  --primary-color: #1a3149;
  --secondary-color: #2e587f;
}
/* Swiper pagination/bullets */
.swiper-pagination-bullet-active,
.owl-dot.active {
  background: #1a3149 !important;
}
/* Link hover u templateu – sekundarna umesto bilo koje zelene */
a.btn-id:hover,
.id-color-2,
.id-color-secondary {
  color: #2e587f !important;
}

/* Homepage – napredni filteri pretrage */
.nn-home-search {
  margin-top: -2rem;
  position: relative;
  z-index: 10;
}
.nn-search-card {
  border-radius: 0.5rem;
  background: #fff;
  border: 1px solid rgba(26, 49, 73, 0.1);
}
.nn-search-card .form-control:focus,
.nn-search-card .form-select:focus {
  border-color: var(--accent-color);
  box-shadow: 0 0 0 0.2rem rgba(247, 179, 27, 0.25);
}

/* Region + Valuta mobilni blok – sakriven na desktopu */
.nn-region-currency-mobile {
  display: none !important;
}

/* Spacer ispod headera – header je absolute/fixed i ne zauzima mesto u toku */
.nn-header-spacer {
  display: block;
  height: 120px;
  flex-shrink: 0;
}
@media (max-width: 992px) {
  .nn-header-spacer {
    height: 75px;
  }
}

/* ========== MOBILNA VERZIJA HEADERA ========== */
@media (max-width: 992px) {
  /* Sakrivanje teksta na mobilnom – samo ikone */
  .sm-hide-inline {
    display: none !important;
  }

  /* Korisnik – samo ikonica */
  header.nn-header .nn-user-btn .nn-user-text {
    display: none !important;
  }
  header.nn-header .nn-user-btn {
    padding: 0.25rem 0.5rem !important;
  }
  header.nn-header .nn-user-btn i {
    margin-right: 0 !important;
  }

  /* Objavi/Dodaj oglas – samo ikonica */
  header.nn-header .nn-btn-publish .nn-btn-publish-text,
  header.nn-header .nn-btn-publish .sm-hide-inline {
    display: none !important;
  }
  header.nn-header .nn-btn-publish {
    padding: 0.4rem 0.6rem !important;
    min-width: auto !important;
  }
  header.nn-header .nn-btn-publish i {
    margin: 0 !important;
  }

  /* Region + Valuta – mobilni blok u hamburger meniju */
  .nn-region-currency-desktop {
    display: none !important;
  }
  .nn-region-currency-mobile {
    display: flex !important;
    flex-wrap: wrap;
    border-top: 1px solid rgba(255, 255, 255, 0.15);
    margin-top: 0.5rem;
  }
  /* Vidljiv tekst – bela pozadina, tamni tekst na mobilnom */
  .nn-header-select-mobile,
  .nn-region-currency-mobile .form-select {
    background: #fff !important;
    color: var(--primary-color) !important;
    border-color: rgba(255, 255, 255, 0.3);
    max-width: 140px;
  }
  .nn-region-currency-mobile #currency-select-mobile {
    max-width: 90px;
  }
  .nn-region-currency-mobile select option {
    background: #fff !important;
    color: var(--primary-color) !important;
  }

  /* Header mora biti tamno plav – nadjačaj template */
  header.nn-header.header-mobile,
  header.nn-header.header-dark.header-mobile {
    background: #1a3149 !important;
  }

  /* Hamburger ikonica – vidljiva bela */
  header.nn-header #menu-btn {
    display: block !important;
    color: #fff !important;
    cursor: pointer;
  }

  /* Glavni meni – u hamburger slide-out meniju */
  /* Kada meni nije otvoren – sakrij mainmenu blok */
  header.nn-header.header-mobile:not(.menu-open) .header-col-mid-wrap {
    display: none !important;
  }
  header.nn-header.header-mobile.menu-open .header-col-mid-wrap {
    display: block !important;
    width: 100% !important;
    flex: none !important;
  }
  header.nn-header.header-mobile .header-col-mid {
    display: flex !important;
    flex-direction: column !important;
    width: 100% !important;
  }
  header.nn-header.header-mobile .de-flex {
    flex-wrap: wrap;
  }
  header.nn-header.header-mobile .de-flex-col.header-col-mid-wrap {
    order: 3;
    width: 100%;
    max-height: calc(100vh - 80px);
    overflow-y: auto;
  }
  header.nn-header.header-mobile #mainmenu,
  header.nn-header.header-dark.header-mobile #mainmenu {
    display: block !important;
    position: relative !important;
    top: auto !important;
    left: auto !important;
    width: 100% !important;
    padding-left: 20px;
    padding-right: 20px;
  }
  header.nn-header #mainmenu li a.menu-item,
  header.nn-header.header-dark #mainmenu li a.menu-item {
    color: rgba(255, 255, 255, 0.95) !important;
  }
  header.nn-header #mainmenu li a.menu-item:hover,
  header.nn-header.header-dark #mainmenu li a.menu-item:hover {
    color: var(--accent-color) !important;
  }
  header.nn-header #mainmenu .menu-item.active {
    color: var(--accent-color) !important;
  }

  /* Hamburger uvek vidljiv */
  header.nn-header .menu_side_area #menu-btn {
    margin-left: 8px;
  }
}
