:root{
  /* Baza — topli papirnati nevtralci */
  --bg:#FAF7F2;          /* ozadje */
  --bg-band:#F2ECE2;     /* rahlo temnejši pas / alt sekcija */
  --surface:#FFFFFF;     /* kartice */
  --surface-warm:#FFFDF9;
  --border:#E9E1D5;      /* topla hairline črta */
  --border-strong:#DDD2C2;

  /* Tekst — topla skoraj-črna + pridušena */
  --text:#211C16;        /* naslovi */
  --text-body:#3D362E;   /* body copy */
  --text-muted:#6B6157;  /* sekundarno (min. za normalen tekst, prestane AA) */
  --text-subtle:#8A8072; /* samo veliko/dekorativno, NIKOLI za drobni pravni tekst */

  /* Poudarek — emerald, poglobljen za svetlo podlago */
  --accent:#0A7350;      /* gumbi + linki (bela na tem prestane AA) */
  --accent-hover:#095E42;
  --accent-bright:#10B981;/* samo dekorativni glifi na mehkih polnilih */
  --accent-soft:#E7F6EF;
  --accent-ring:rgba(10,115,80,0.18);

  /* Topli sekundarni poudarek — zelo redko (značke, drobni detajli) */
  --warm:#C2683F;
  --warm-soft:#F7E9E0;

  /* Sence — tople, mehke */
  --shadow-sm:0 1px 3px rgba(33,28,22,0.05);
  --shadow:0 6px 24px rgba(33,28,22,0.07);
  --shadow-lg:0 16px 48px rgba(33,28,22,0.10);
}

/* ---- @font-face (NESPREMENJENO — ohrani obstoječih 5 blokov) ---- */
@font-face{font-family:'Plus Jakarta Sans';src:url('../fonts/PlusJakartaSans-Regular.woff2') format('woff2');font-weight:400;font-display:swap;}
@font-face{font-family:'Plus Jakarta Sans';src:url('../fonts/PlusJakartaSans-Medium.woff2') format('woff2');font-weight:500;font-display:swap;}
@font-face{font-family:'Plus Jakarta Sans';src:url('../fonts/PlusJakartaSans-SemiBold.woff2') format('woff2');font-weight:600;font-display:swap;}
@font-face{font-family:'Plus Jakarta Sans';src:url('../fonts/PlusJakartaSans-Bold.woff2') format('woff2');font-weight:700;font-display:swap;}
@font-face{font-family:'Plus Jakarta Sans';src:url('../fonts/PlusJakartaSans-ExtraBold.woff2') format('woff2');font-weight:800;font-display:swap;}

*{margin:0;padding:0;box-sizing:border-box;}
body{
  font-family:'Plus Jakarta Sans',sans-serif;
  background-color:var(--bg);
  color:var(--text-body);
  min-height:100vh;position:relative;overflow-x:hidden;
  -webkit-font-smoothing:antialiased;
}
/* Topel točkovni raster (namesto temnega grida) */
body::before{
  content:'';position:fixed;inset:0;z-index:0;pointer-events:none;
  background-image:radial-gradient(rgba(33,28,22,0.035) 1px, transparent 1px);
  background-size:22px 22px;
}
/* Mehek topel sij zgoraj levo */
body::after{
  content:'';position:fixed;top:-15%;left:-10%;width:55%;height:55%;
  z-index:0;pointer-events:none;
  background:radial-gradient(circle at 30% 40%, rgba(10,115,80,0.05), transparent 70%);
}
.content{position:relative;z-index:1;}

.bento-card{
  background-color:var(--surface);
  border:1px solid var(--border);
  border-radius:1.25rem;padding:1.75rem;
  transition:transform .3s cubic-bezier(.25,.46,.45,.94),box-shadow .3s ease,border-color .3s ease;
  box-shadow:var(--shadow-sm);
}
.bento-card:hover{
  transform:translateY(-4px);
  border-color:var(--accent-ring);
  box-shadow:var(--shadow);
}

.btn-emerald{
  display:inline-flex;align-items:center;gap:.5rem;
  background-color:var(--accent);color:#fff;font-weight:600;
  padding:.8rem 1.8rem;border-radius:.75rem;
  transition:background-color .2s,transform .2s,box-shadow .2s;
  text-decoration:none;border:none;cursor:pointer;
}
.btn-emerald:hover{background-color:var(--accent-hover);transform:translateY(-1px);box-shadow:0 8px 20px rgba(10,115,80,.22);}

.btn-secondary{
  display:inline-flex;align-items:center;gap:.5rem;
  background:var(--surface);color:var(--accent);font-weight:600;
  padding:.75rem 1.5rem;border-radius:.75rem;border:1px solid var(--accent-ring);
  text-decoration:none;transition:.2s;
}
.btn-secondary:hover{background:var(--accent-soft);border-color:var(--accent);}

.contact-link{
  display:inline-flex;align-items:center;gap:.5rem;
  color:var(--accent);font-weight:500;text-decoration:none;
  padding:.5rem .9rem;border-radius:.6rem;border:1px solid var(--border);
  background:var(--surface-warm);transition:.2s;font-size:.95rem;
}
.contact-link:hover{border-color:var(--accent);background:var(--accent-soft);}

.tag-badge{
  display:inline-block;background:var(--surface-warm);
  border:1px solid var(--border);border-radius:9999px;
  padding:.45rem 1rem;font-size:.85rem;font-weight:500;color:var(--text-muted);transition:.2s;
}
.tag-badge:hover{border-color:var(--accent);color:var(--accent);background:var(--accent-soft);}

.step-number{
  display:inline-flex;align-items:center;justify-content:center;
  width:2.5rem;height:2.5rem;border-radius:9999px;
  background:var(--accent-soft);color:var(--accent);font-weight:700;font-size:1.1rem;flex-shrink:0;
}

.avatar{
  width:112px;height:112px;border-radius:9999px;object-fit:cover;
  border:3px solid var(--surface);box-shadow:0 0 0 1px var(--border),var(--shadow);
}

.form-input{
  width:100%;background:var(--surface-warm);
  border:1px solid var(--border);border-radius:.75rem;
  padding:.75rem 1rem;color:var(--text);font-family:'Plus Jakarta Sans',sans-serif;
  font-size:.95rem;transition:border-color .2s,box-shadow .2s;outline:none;
}
.form-input:focus{border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-ring);}
.form-input::placeholder{color:var(--text-subtle);}
textarea.form-input{resize:vertical;min-height:6rem;}

@media (max-width:767px){.bento-card{padding:1.25rem;}}
