/* Stranica mape prati isti vizuelni identitet kao ostatak sajta. */

/* Osnovni stil za telo stranice */
body.mapa-page {
  background-color: #0b0b0c;
  color: #f2f2f2;
  font-family: "Merriweather", serif;
  overflow-x: hidden;
  margin: 0;
}

/* Glavna sekcija mape */
.map-section {
  position: relative;
  padding: 120px 20px 100px;
  text-align: center;
  background: radial-gradient(circle at 50% 20%, rgba(10,10,10,1) 0%, #0b0b0c 60%);
  box-shadow:
    0 -40px 120px rgba(0,0,0,0.9) inset,
    0 80px 160px rgba(0,0,0,0.9) inset;
}

.map-section::before {
  content: "";
  position: absolute;
  top: 0;
  left: 50%;
  transform: translateX(-50%);
  width: 120%;
  height: 200px;
  background: radial-gradient(
    circle at 50% 0%,
    rgba(212,175,55,0.12) 0%,
    rgba(0,0,0,0) 70%
  );
  filter: blur(60px);
  opacity: 0.35;
  pointer-events: none;
}

.map-section-inner {
  max-width: 1000px;
  margin: 0 auto;
  position: relative;
  z-index: 2;
  padding: 0 20px;
  color: #cfcfcf;
  text-shadow: 0 0 8px rgba(0,0,0,0.8);
}

/* Naslov sekcije */
.map-title {
  color: #d4af37;
  font-family: "Cinzel Decorative", serif;
  font-weight: 400;
  font-size: clamp(1.4rem, 1rem + 1vw, 2rem);
  letter-spacing: 0.15em;
  text-transform: uppercase;
  text-shadow:
    0 0 6px rgba(212,175,55,0.4),
    0 0 30px rgba(212,175,55,0.15);
  margin: 0 0 20px 0;
  opacity: 0.9;
}

/* Opis / kustoski tekst */
.map-desc {
  font-size: 0.95em;
  line-height: 1.7;
  font-weight: 300;
  letter-spacing: 0.03em;
  color: #c9c9c9;
  max-width: 700px;
  margin: 0 auto 40px auto;
  opacity: 0.9;
  text-shadow: 0 0 8px rgba(0,0,0,0.9);
}

/* Okvir mape - tretiramo isto kao video frame */
.map-frame {
  width: 80%;
  max-width: 900px;
  margin: 0 auto 40px auto;
  position: relative;

  border-radius: 12px;
  background: #000;
  box-shadow:
    0 0 60px rgba(212,175,55,0.15),
    0 40px 120px rgba(0,0,0,0.9);
  border: 1px solid rgba(212,175,55,0.25);
}

/* Unutrašnja “staklena ivica” */
.map-frame::after {
  content: "";
  position: absolute;
  inset: 0;
  border-radius: inherit;
  border: 1px solid rgba(212,175,55,0.4);
  box-shadow: 0 0 30px rgba(212,175,55,0.4);
  mix-blend-mode: screen;
  opacity: 0.25;
  pointer-events: none;
}

/* Ovo drži iframe u proporciji i omogućava responsive visinu */
.map-frame-inner {
  position: relative;
  width: 100%;
  /* aspect ratio oko 16:9, ali malo viši da liči na kartu */
  padding-top: 62%;
  overflow: hidden;
  border-radius: 12px;
}

/* Sama Google mapa */
.map-embed {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  border: 0;

  border-radius: 12px;
  box-shadow: 0 0 20px rgba(212,175,55,0.4);
  filter: brightness(1) contrast(1.05) saturate(1.05);
}

/* Fusnota ispod mape */
.map-footnote {
  font-size: 0.8em;
  line-height: 1.6;
  font-weight: 300;
  color: #8f8f8f;
  max-width: 700px;
  margin: 20px auto 0 auto;
  text-shadow: 0 0 8px rgba(0,0,0,0.8);
  letter-spacing: 0.03em;
  opacity: 0.8;
  font-style: italic;
}

/* Fade-in animacija (koristimo isti sistem kao na indexu/istoriji) */
.fade-in {
  opacity: 0;
  transform: translateY(30px) scale(0.98);
  filter: blur(6px);
  transition:
    opacity 1s cubic-bezier(0.16, 0.84, 0.44, 1),
    transform 1s cubic-bezier(0.16, 0.84, 0.44, 1),
    filter 1s cubic-bezier(0.16, 0.84, 0.44, 1);
  will-change: opacity, transform, filter;
}
.fade-in.visible {
  opacity: 1;
  transform: translateY(0) scale(1);
  filter: blur(0px);
}

/* Responsive prilagodjavanje */
@media (max-width: 900px) {
  .map-section {
    padding: 100px 20px 80px;
  }

  .map-frame {
    width: 90%;
  }

  .map-desc,
  .map-footnote {
    padding: 0 10px;
  }
}
