:root{
  --bg: #0f1624;
  --surface: #131c2f;
  --surface2:#0b1220;
  --text: #e9eef7;
  --muted:#b8c2d8;
  --line: rgba(233,238,247,.12);
  --accent:#c0162b;
  --shadow: 0 10px 30px rgba(0,0,0,.35);
  --radius: 16px;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{
  margin:0;
  font-family: system-ui, -apple-system, Segoe UI, Roboto, Arial, sans-serif;
  color:var(--text);
  background:
    radial-gradient(1200px 600px at 20% 0%, rgba(192,22,43,.18), transparent 55%),
    radial-gradient(900px 500px at 90% 10%, rgba(255,255,255,.06), transparent 60%),
    linear-gradient(180deg, var(--bg), #070b14);
  line-height:1.55;
}
a{color:inherit}
.container{max-width:1150px;margin:0 auto;padding:0 20px}
.topbar{
  position:sticky;top:0;z-index:50;
  background: rgba(15,22,36,.72);
  backdrop-filter: blur(10px);
  border-bottom:1px solid var(--line);
}
.topbar-inner{
  display:flex;align-items:center;justify-content:space-between;
  padding:14px 0; gap:16px;
}
.brand{display:flex;align-items:center;gap:12px;text-decoration:none}
.brand .mark{width:120px;height:auto;color:var(--text)}
.brand .name{display:flex;flex-direction:column;gap:2px}
.brand .name strong{font-size:14px;letter-spacing:.12em;text-transform:uppercase}
.brand .name span{font-size:12px;color:var(--muted)}
.nav{display:flex;gap:14px;flex-wrap:wrap;justify-content:flex-end}
.nav a{
  text-decoration:none;
  font-size:13px;color:var(--muted);
  padding:8px 10px;border-radius:999px;
  border:1px solid transparent;
}
.nav a:hover{color:var(--text);border-color:var(--line);background:rgba(255,255,255,.03)}
.nav a.active{color:var(--text);border-color: rgba(192,22,43,.35);background:rgba(192,22,43,.10)}
.hero{padding:48px 0 18px}
.hero-grid{display:grid;grid-template-columns: 1.35fr .65fr;gap:18px;align-items:start}
.card{
  background: linear-gradient(180deg, rgba(19,28,47,.9), rgba(11,18,32,.92));
  border:1px solid var(--line);
  border-radius:var(--radius);
  box-shadow: var(--shadow);
}
.hero-card{padding:28px}
.kicker{
  display:inline-flex;align-items:center;gap:10px;
  font-size:12px;color:var(--muted);letter-spacing:.12em;text-transform:uppercase
}
.dot{width:8px;height:8px;border-radius:99px;background:var(--accent);box-shadow:0 0 0 6px rgba(192,22,43,.15)}
h1{margin:14px 0 10px;font-size:32px;line-height:1.2;letter-spacing:-.02em}
.lead{margin:0;color:var(--muted);max-width:68ch}
.badges{display:flex;flex-wrap:wrap;gap:10px;margin-top:18px}
.badge{
  font-size:12px;color:var(--text);
  border:1px solid var(--line);
  background:rgba(255,255,255,.03);
  padding:8px 10px;border-radius:999px
}
.cta-row{display:flex;gap:12px;flex-wrap:wrap;margin-top:18px}
.btn{
  display:inline-flex;align-items:center;justify-content:center;gap:10px;
  padding:10px 14px;border-radius:12px;
  border:1px solid var(--line);
  background:rgba(255,255,255,.03);
  text-decoration:none;font-size:13px;color:var(--text)
}
.btn.primary{
  border-color: rgba(192,22,43,.55);
  background: linear-gradient(180deg, rgba(192,22,43,.95), rgba(145,10,29,.95));
}
.btn:hover{transform: translateY(-1px)}
.aside{position:sticky;top:76px;padding:18px}
.aside h3{margin:0 0 10px;font-size:14px;letter-spacing:.08em;text-transform:uppercase}
.aside p{margin:0 0 12px;color:var(--muted);font-size:13px}
.filelist{display:flex;flex-direction:column;gap:10px;margin-top:10px}
.file{
  display:flex;align-items:flex-start;justify-content:space-between;gap:12px;
  padding:12px;border-radius:14px;
  background:rgba(255,255,255,.03);
  border:1px solid var(--line);
  text-decoration:none;
}
.file strong{font-size:13px}
.file span{font-size:12px;color:var(--muted)}
.file:hover{border-color: rgba(192,22,43,.35)}
.section{padding:18px 0}
.section .card{padding:22px}
.section h2{margin:0 0 10px;font-size:20px}
.section h2 small{font-weight:500;color:var(--muted);font-size:12px;margin-left:10px}
.prose p{margin:10px 0;color:var(--muted)}
.prose ul{margin:10px 0 0 18px;color:var(--muted)}
hr.sep{border:0;border-top:1px solid var(--line);margin:18px 0}
.table{
  width:100%;border-collapse:separate;border-spacing:0;
  overflow:hidden;border-radius:14px;border:1px solid var(--line);
}
.table th,.table td{padding:12px 12px;vertical-align:top}
.table thead th{
  text-align:left;font-size:12px;letter-spacing:.08em;text-transform:uppercase;
  color:var(--muted);
  background:rgba(255,255,255,.03);
  border-bottom:1px solid var(--line)
}
.table tbody td{border-bottom:1px solid var(--line);color:var(--muted);font-size:13px}
.table tbody tr:last-child td{border-bottom:0}
.table td:nth-child(1){width:56px;color:var(--text)}
.footer{
  margin-top:26px;padding:26px 0 34px;
  border-top:1px solid var(--line);
  color:var(--muted);font-size:13px
}
.footer-grid{display:grid;grid-template-columns: 1.1fr .9fr;gap:18px}
.small{font-size:12px;color:var(--muted)}
.note{
  padding:12px 14px;border-radius:14px;
  border:1px dashed rgba(233,238,247,.22);
  color:var(--muted);background:rgba(255,255,255,.02)
}
.service-section {
  display: grid;
  grid-template-columns: 1fr auto;
  gap: 2rem;
  align-items: start;
}
@media (max-width: 920px){
  .hero-grid{grid-template-columns: 1fr}
  .aside{position:relative;top:auto}
  h1{font-size:28px}
}
.kontrole-grid{
  display: grid;
  grid-template-columns: 96px 1fr;
  gap: 20px;
  align-items: start;
}

.kontrole-accreditation{
  border-right: 1px solid var(--line);
  padding-right: 14px;
  min-height: 100%;
}

.k026-badge{
  width: 72px;
  height: auto;
  display: block;
  opacity: 0.95;
}

/* mobilni prikaz */
@media (max-width: 720px){
  .kontrole-grid{
    grid-template-columns: 1fr;
  }

  .kontrole-accreditation{
    border-right: none;
    padding-right: 0;
    margin-bottom: 12px;
  }
}
