:root{
  --bv-primary:#006c8c;
  --bv-soft:#f6f8fb;
  --bv-border:#e6eaf0;
  --bv-text:#1f2937;
}

body{ color:var(--bv-text); background:#fff; }

.navbar{ border-bottom:1px solid var(--bv-border); }

.hero{
  background: linear-gradient(180deg, var(--bv-soft), #ffffff);
  border-bottom:1px solid var(--bv-border);
}

.hero .lead{ color:#4b5563; }

.section-title{ font-weight:700; letter-spacing:-0.2px; }

.card{
  border:1px solid var(--bv-border);
  border-radius:12px;
  overflow:hidden;
}

.hero .lead {
  font-size: 1rem;
}

.banner-slot{
  border-radius:5px;
  color:#64748b;
  display:flex;
  align-items:center;
  justify-content:center;
  position:relative;
  overflow:hidden
}

.banner-slot small{ display:block; opacity:.85; }
.banner-slot .label{ font-weight:800; letter-spacing:.3px; text-transform: uppercase;}

.banner-slot::after{
  content:"";
  position:absolute;
  inset:0;
  background: radial-gradient(circle at 30% 20%, rgba(43,108,176,.08), transparent 40%),
              radial-gradient(circle at 70% 60%, rgba(43,108,176,.06), transparent 40%);
  pointer-events:none;
}

.kpi{
  background:#fff;
  border:1px solid var(--bv-border);
  border-radius:12px;
  padding:14px;
}

.kpi .num{ font-size:20px; font-weight:800; }
.kpi .hint{ color:#6b7280; font-size:13px; }

.company-logo-fallback{
  width:46px;height:46px;
  border-radius:12px;
  background:var(--bv-soft);
  border:1px solid var(--bv-border);
  display:flex;
  align-items:center;
  justify-content:center;
  font-weight:800;
  color:var(--bv-primary);
  flex:0 0 auto;
}

.company-logo-img{
  width:46px;height:46px;
  border-radius:12px;
  border:1px solid var(--bv-border);
  object-fit:contain;
  background:#fff;
}

.company-card .name {
  font-weight:800;
  margin-bottom:2px;
}
.company-card .meta{ color:#6b7280; font-size:13px; }
.company-card .desc{ color:#4b5563; font-size:14px; }

.sticky-col{ position:sticky; top:15px; }

.footer{
  border-top:1px solid var(--bv-border);
  background:#fff;
}

a{ color:var(--bv-primary); }
a:hover{ color:#1f5aa0; text-decoration:none; }

.btn-primary:hover {
    color: #fff;
    background-color: #014c62;
    border-color: #0062cc;
}
.btn-outline-primary:hover {
    color: #fff;
    background-color: #014c62;
    border-color: #014c62;
}
.btn-primary{ background:var(--bv-primary); border-color:var(--bv-primary); }
.btn-outline-primary{ border-color:var(--bv-primary); color:var(--bv-primary); }

.site-logo{
  height:32px;
  width:auto;
}

/* ======================================
   CARD-BODY ONLY FOR HERO SEARCH
   ====================================== */

/* Stilizuje samo card-body koji sadrži heroSearch */
.card-body:has(#heroSearch) {
  background: linear-gradient(
    -135deg,
    rgba(124, 58, 237, 0.18),
    rgba(168, 85, 247, 0.15),
    rgba(236, 72, 153, 0.12)
  );

  transition: all 0.25s ease;
}

/* ======================================
   DIRECTORY SEARCH – Soft Purple Style
   ====================================== */

/* Wrapper card-body koji sadrži searchInput */
.card-body:has(#searchInput) {
  background: linear-gradient(
    -135deg,
    rgba(124, 58, 237, 0.12),
    rgba(168, 85, 247, 0.10),
    rgba(236, 72, 153, 0.08)
  );

  transition: all 0.25s ease;
}
/* ======================================
   PREMIUM CARDS – Istaknute pozicije
   ====================================== */

/* ================= BLUE ================= */
.premium-blue {
  background: linear-gradient(
    -135deg,
    rgba(37, 99, 235, 0.55),
    rgba(6, 182, 212, 0.12)
  );

}


/* ================= PURPLE ================= */
.premium-green {
  background: linear-gradient(
    -135deg,
    rgba(16, 185, 129, 0.55),
    rgba(34, 197, 94, 0.14)
  );

}

/* ================= GOLD ================= */
.premium-gold {
  background: linear-gradient(
    -135deg,
    rgba(234, 179, 8, 0.55),
    rgba(251, 191, 36, 0.14)
  );
}
.banner-728x90{ height:90px; }
.banner-970x90{ height:90px; }
.banner-970x250{ height:250px; }
.banner-300x600{ height:600px; }

.banner-slot{
  border:2px dashed #cbd5e1;
  border-radius:12px;
  background: linear-gradient(
    135deg,
    rgba(251, 253, 255, 0.99),
    rgba(234, 255, 213, 0.50)
  );
  color:#64748b;
  display:flex;
  align-items:center;
  justify-content:center;
  text-align:center;
  position:relative;
  overflow:hidden;
}
.advartise .banner-slot{
  border:2px dashed #cbd5e1;
  border-radius:12px;
  background: linear-gradient(
    135deg,
    rgba(251, 253, 255, 0.99),
    rgba(234, 255, 213, 0.50)
  );
  color:#64748b;
  display:flex;
  align-items:center;
  justify-content:center;
  text-align:center;
  position:relative;
  overflow:hidden;
}
.advartise .banner-728x90{ height:90px; }
.advartise .banner-970x90{ height:90px; }
.advartise .banner-970x250{ height:250px; }
.advartise .banner-300x250{ height:250px; }
.advartise .banner-300x600{ height:600px; }