/* V3.47.23: contact-form additions and refined contact backgrounds. Original styles.css remains byte-identical. */
.contact-form .contact-honeypot { position:absolute; width:1px; height:1px; padding:0; margin:-1px; overflow:hidden; clip-path:inset(50%); white-space:nowrap; }
.contact-form .contact-note { margin:0; font-size:14px; line-height:1.6; }
.contact-form .contact-note a { color:#006ebe; text-decoration:underline; }
.contact-form input,
.contact-form textarea { font-weight:400; }
.contact-form button:disabled { opacity:.65; cursor:wait; }
.contact-form #formStatus { overflow-wrap:anywhere; }
.contact-form #contactBot { max-width:100%; overflow:hidden; }

.contact-attachments { display:grid; gap:10px; margin-top:2px; }
.contact-attachments__heading { display:flex; align-items:center; justify-content:space-between; gap:16px; font-size:12px; font-weight:800; }
.contact-attachments__heading small { color:#617589; font-size:11px; font-weight:600; }
.contact-attachments__heading > span:last-child { color:#617589; font-size:11px; font-weight:700; white-space:nowrap; }
.contact-form .contact-file-picker {
  display:grid;
  grid-template-columns:auto 1fr auto;
  align-items:center;
  gap:14px;
  min-height:88px;
  padding:14px 16px;
  border:1px dashed #a9c3d7;
  border-radius:12px;
  background:#f7fbfe;
  cursor:pointer;
  transition:border-color .18s ease, background-color .18s ease, box-shadow .18s ease;
}
.contact-form .contact-file-picker:hover,
.contact-form .contact-file-picker.is-dragging { border-color:#087dc1; background:#eef8fe; box-shadow:0 0 0 3px rgba(8,125,193,.09); }
.contact-form .contact-file-picker:focus-within { border-color:#087dc1; box-shadow:0 0 0 3px rgba(8,125,193,.12); }
.contact-file-input { position:absolute; width:1px; height:1px; padding:0!important; margin:-1px; overflow:hidden; clip-path:inset(50%); white-space:nowrap; border:0!important; }
.contact-file-picker__icon { display:grid; place-items:center; width:42px; height:42px; border-radius:50%; background:#e2f2fc; color:#087dc1; font-size:28px; font-weight:500; line-height:1; }
.contact-file-picker__copy { display:grid; gap:3px; min-width:0; }
.contact-file-picker__copy strong { color:#0a2135; font-size:13px; line-height:1.35; }
.contact-file-picker__copy small { color:#617589; font-size:12px; font-weight:500; line-height:1.4; }
.contact-file-picker__action { padding:9px 12px; border:1px solid #bad0e0; border-radius:7px; background:#fff; color:#0876b8; font-size:11px; font-weight:800; white-space:nowrap; }
.contact-attachments__hint { margin:0; color:#617589; font-size:11px; line-height:1.5; }
.contact-attachments__error { min-height:0; color:#b42318; font-size:12px; font-weight:700; line-height:1.45; }
.contact-attachments__error:empty { display:none; }
.contact-file-list { display:grid; gap:8px; margin:0; padding:0; list-style:none; }
.contact-file-item { display:grid; grid-template-columns:minmax(0,1fr) auto; align-items:center; gap:12px; padding:10px 12px; border:1px solid #d8e3eb; border-radius:9px; background:#fff; }
.contact-file-item__data { display:grid; gap:2px; min-width:0; }
.contact-file-item__name { overflow:hidden; color:#153047; font-size:12px; font-weight:800; text-overflow:ellipsis; white-space:nowrap; }
.contact-file-item__size { color:#6b7e8e; font-size:11px; }
.contact-file-item__remove { min-width:42px; min-height:34px; padding:6px 10px; border:1px solid #d1dee8; border-radius:7px; background:#fff; color:#a12b22; font:inherit; font-size:11px; font-weight:800; cursor:pointer; }
.contact-file-item__remove:hover { border-color:#cf7d76; background:#fff8f7; }
.contact-file-item__remove:focus-visible { outline:3px solid rgba(8,125,193,.22); outline-offset:2px; }

/* Samostojna kontaktna stran: mirna tehnična podlaga brez ponavljajočih se logotipov. */
.contact-section--visual {
  background:
    radial-gradient(circle at 8% 18%,rgba(82,185,238,.10),transparent 30%),
    radial-gradient(circle at 94% 78%,rgba(8,119,201,.075),transparent 32%),
    linear-gradient(135deg,#f8fbfd 0%,#f1f7fb 54%,#f7fafc 100%);
}
.contact-section--visual::before {
  content:"";
  position:absolute;
  z-index:0;
  inset:0 auto 0 0;
  width:min(34vw,540px);
  background-image:radial-gradient(circle,rgba(8,119,201,.18) 1.1px,transparent 1.45px);
  background-size:20px 20px;
  -webkit-mask-image:linear-gradient(90deg,#000 0%,rgba(0,0,0,.72) 30%,transparent 100%);
  mask-image:linear-gradient(90deg,#000 0%,rgba(0,0,0,.72) 30%,transparent 100%);
  opacity:.38;
  pointer-events:none;
}
.contact-section--visual::after {
  content:none;
}
.contact-section--visual .contact-wrap { position:relative; z-index:1; }

@media (max-width:380px) {
  .contact-form #contactBot { transform:scale(.88); transform-origin:left top; margin-bottom:-9px; }
}
@media (max-width:560px) {
  .contact-form .contact-file-picker { grid-template-columns:auto 1fr; }
  .contact-file-picker__action { display:none; }
  .contact-attachments__heading { align-items:flex-start; }
  .contact-section--visual::before { width:62vw; background-size:18px 18px; opacity:.28; }
}

/* Tehnično ozadje razdelka pod kontaktnim obrazcem. */
.contact-guidance {
  position:relative;
  isolation:isolate;
  overflow:hidden;
  border-top:1px solid rgba(8,119,201,.09);
  background:
    radial-gradient(circle at 12% 18%,rgba(61,174,235,.13),transparent 25%),
    radial-gradient(circle at 88% 82%,rgba(5,92,154,.10),transparent 29%),
    linear-gradient(145deg,#fbfdff 0%,#f2f8fc 52%,#eaf4fa 100%);
}
.contact-guidance::before {
  content:"";
  position:absolute;
  z-index:-2;
  inset:0;
  background-image:
    linear-gradient(rgba(8,119,201,.055) 1px,transparent 1px),
    linear-gradient(90deg,rgba(8,119,201,.055) 1px,transparent 1px);
  background-size:32px 32px;
  -webkit-mask-image:linear-gradient(90deg,rgba(0,0,0,.85),rgba(0,0,0,.18) 46%,rgba(0,0,0,.55));
  mask-image:linear-gradient(90deg,rgba(0,0,0,.85),rgba(0,0,0,.18) 46%,rgba(0,0,0,.55));
  pointer-events:none;
}
.contact-guidance::after {
  content:none;
}
.contact-guidance .overview-section__inner {
  position:relative;
  z-index:1;
}
.contact-guidance .overview-section__inner::before {
  content:none;
}
.contact-guidance .overview-benefit {
  border-color:rgba(128,168,195,.42);
  box-shadow:0 14px 36px rgba(6,40,66,.075);
  transition:transform .2s ease,border-color .2s ease,box-shadow .2s ease;
}
.contact-guidance .overview-benefit:hover {
  transform:translateY(-4px);
  border-color:rgba(8,119,201,.42);
  box-shadow:0 18px 42px rgba(6,40,66,.11);
}
@media (prefers-reduced-motion:reduce) {
  .contact-guidance .overview-benefit { transition:none; }
  .contact-guidance .overview-benefit:hover { transform:none; }
}
@media (max-width:760px) {
  .contact-guidance::before { background-size:26px 26px; opacity:.72; }
}
