/* ==========================================================================
   Amali center Celje — osnovni slog
   Barvna paleta iz celostne podobe: zlata #C5A453, olivno-zlata #A99565.
   Besedilo je vedno temno (#1a1a1a) zaradi berljivosti / WCAG 2.1 AA.
   ========================================================================== */

:root {
  --amali-gold: #C5A453;
  --amali-olive: #A99565;
  /* Temnejši odtenek zlate za besedilo/povezave na svetlem ozadju,
     ker #C5A453 na belem ne doseže kontrasta AA. */
  --amali-gold-dark: #8a6f2f;
  --amali-cream: #faf7f1;
  --amali-sand: #f3ecdf;
  --amali-ink: #1a1a1a;
  --amali-muted: #5c5647;
}

body {
  font-family: "DM Sans", system-ui, -apple-system, "Segoe UI", sans-serif;
  color: var(--amali-ink);
  background-color: #fff;
  line-height: 1.65;
}

h1, h2, h3, h4, h5, .font-brand {
  font-family: "Cormorant Garamond", Georgia, "Times New Roman", serif;
  font-weight: 600;
  color: var(--amali-ink);
  letter-spacing: .01em;
}

a { color: var(--amali-gold-dark); text-decoration-thickness: 1px; text-underline-offset: 3px; }
a:hover, a:focus { color: #6f5926; }

/* Vidno stanje fokusa za dostopnost s tipkovnico */
a:focus-visible, button:focus-visible, .btn:focus-visible, input:focus-visible, textarea:focus-visible, select:focus-visible {
  outline: 3px solid var(--amali-gold-dark);
  outline-offset: 2px;
}

/* --- Navigacija ------------------------------------------------------- */
.navbar-amali {
  background-color: rgba(255, 255, 255, .96);
  border-bottom: 1px solid var(--amali-sand);
}
.navbar-amali .nav-link {
  color: var(--amali-ink);
  font-weight: 500;
}
.navbar-amali .nav-link:hover,
.navbar-amali .nav-link:focus,
.navbar-amali .nav-link.active {
  color: var(--amali-gold-dark);
}
.navbar-amali .nav-link.active { text-decoration: underline; text-underline-offset: 6px; }

/* --- Gumbi ------------------------------------------------------------- */
.btn-amali {
  background-color: var(--amali-gold);
  border: 1px solid var(--amali-gold);
  color: #241c07;               /* temno besedilo na zlati podlagi (AA) */
  font-weight: 600;
  padding: .6rem 1.4rem;
  border-radius: 2rem;
}
.btn-amali:hover, .btn-amali:focus {
  background-color: #b3923f;
  border-color: #b3923f;
  color: #241c07;
}
.btn-amali-outline {
  border: 1px solid var(--amali-gold-dark);
  color: var(--amali-gold-dark);
  font-weight: 600;
  padding: .6rem 1.4rem;
  border-radius: 2rem;
  background: transparent;
}
.btn-amali-outline:hover, .btn-amali-outline:focus {
  background-color: var(--amali-gold-dark);
  color: #fff;
}

/* --- Odseki ------------------------------------------------------------ */
.section-cream { background-color: var(--amali-cream); }
.section-sand  { background-color: var(--amali-sand); }

.hero {
  background: linear-gradient(180deg, #fff 0%, var(--amali-cream) 100%);
  padding: 4rem 0 3rem;
}
.hero h1 { font-size: clamp(2rem, 5vw, 3.2rem); }
.hero .lead { color: var(--amali-muted); max-width: 42rem; }

/* --- Kartice ------------------------------------------------------------ */
.card-amali {
  border: 1px solid var(--amali-sand);
  border-radius: 1rem;
  transition: transform .15s ease, box-shadow .15s ease;
  /* Enako visoke kartice v mrežah dosežemo z Bootstrapovim razredom .h-100,
     ne globalno — sicer se kartice, zložene ena pod drugo, prekrivajo. */
}
.card-amali:hover { transform: translateY(-3px); box-shadow: 0 .75rem 1.5rem rgba(169, 149, 101, .18); }
.card-amali .card-title { font-size: 1.35rem; }

.icon-circle {
  width: 3.25rem; height: 3.25rem;
  display: inline-flex; align-items: center; justify-content: center;
  border-radius: 50%;
  background-color: var(--amali-sand);
  color: var(--amali-gold-dark);
  font-size: 1.4rem;
}

/* Oznaka tipa profila soustvarjalca */
.badge-amali {
  background-color: var(--amali-sand);
  color: var(--amali-gold-dark);
  font-weight: 600;
  border-radius: 2rem;
  padding: .35em .9em;
}

/* Začasna slika profila (dokler ne dobimo fotografij) */
.avatar-placeholder {
  width: 96px; height: 96px;
  border-radius: 50%;
  background-color: var(--amali-sand);
  color: var(--amali-olive);
  display: inline-flex; align-items: center; justify-content: center;
  font-size: 2.2rem;
}

/* --- Noga --------------------------------------------------------------- */
.footer-amali {
  background-color: #2e2716;      /* zelo temna zlata — bela pisava dosega AAA */
  color: #f5efe2;
}
.footer-amali a { color: #e8d9b0; }
.footer-amali a:hover, .footer-amali a:focus { color: #fff; }
.footer-amali .small { color: #cfc4a5; }

/* --- Obrazci ------------------------------------------------------------ */
.form-control:focus, .form-select:focus {
  border-color: var(--amali-gold);
  box-shadow: 0 0 0 .25rem rgba(197, 164, 83, .25);
}

/* Polje-past za roboty (honeypot) — skrito obiskovalcem in bralnikom */
.hp-field { position: absolute; left: -9999px; width: 1px; height: 1px; overflow: hidden; }

/* Okvir za rezervacijski sistem, ki se naloži šele po privolitvi */
.booking-consent {
  border: 2px dashed var(--amali-olive);
  border-radius: 1rem;
  background-color: var(--amali-cream);
}

/* --- Razno --------------------------------------------------------------- */
.divider-amali {
  width: 72px; height: 3px;
  background-color: var(--amali-gold);
  border: 0; opacity: 1;
  margin: 1rem 0 1.5rem;
}
.text-muted-amali { color: var(--amali-muted); }

@media (prefers-reduced-motion: reduce) {
  .card-amali { transition: none; }
}

/* Harmonika (FAQ) v barvah celostne podobe namesto privzete modre */
.accordion-button:not(.collapsed) {
  background-color: var(--amali-sand);
  color: var(--amali-ink);
  box-shadow: inset 0 -1px 0 var(--amali-olive);
}
.accordion-button:focus { box-shadow: 0 0 0 .25rem rgba(197, 164, 83, .25); }
