@import url('https://fonts.googleapis.com/css2?family=Rock+3D&family=Tilt+Prism&display=swap');


/*h1 {
  font-family: "Rock 3D", system-ui;
  font-weight: 400;
  font-style: normal;
  font-size: 26px;
}*/

h1 {
    font-family: "Rock 3D", sans-serif;
    font-optical-sizing: auto;
    font-weight: 400;
    font-style: normal;
    font-size: 34px;
    font-variation-settings:
      "XROT" 0,
      "YROT" 0;
  }

h2 {
    font-family: "Tilt Prism", sans-serif;
    font-optical-sizing: auto;
    font-weight: 400;
    font-style: normal;
    font-variation-settings:
      "XROT" 0,
      "YROT" 0;
  }

/* { font-family: jolly-lodger-regular; } */

/*Weitere Schriften: Affogato, Krungthep*/
/* {background-color: #333333;}*/
* { color: white; }
* {font-family: tahoma;}

.uppercase { text-transform: uppercase; }

.text {fill: white; font-size:24px;}

/*Sternhintergrund Anfang*/
.stars-container {
  position: fixed;
  top: 0;
  left: 0;
  width: 100vw;
  height: 100vh;
  background: midnightblue;
  z-index: -1;
}

.star-layer {
  position: absolute;
  top: 0;
  left: 0;
  /* 1. Die "Kachelgröße" festlegen */
  width: 300px;
  height: 300px;
  background: transparent;
}

/* 2. Damit die Kachel den ganzen Bildschirm füllt */
.layer-1, .layer-2 {
  width: 100%;
  height: 100%;
}

.layer-1 {
  /* Sterne innerhalb der 300x300px Kachel verteilen */
  background-image: radial-gradient(1px 1px at 20px 30px, #eee, rgba(0,0,0,0)),
                    radial-gradient(1px 1px at 40px 70px, #fff, rgba(0,0,0,0)),
                    radial-gradient(1px 1px at 150px 40px, #ddd, rgba(0,0,0,0)),
                    radial-gradient(2px 2px at 250px 180px, #fff, rgba(0,0,0,0)),
                    radial-gradient(1px 1px at 80px 240px, #fff, rgba(0,0,0,0));
  background-size: 300px 300px; /* Hier passiert die Wiederholung! */
  animation: sparkle-1 3s infinite ease-in-out;
}

.layer-2 {
  /* Zweites Muster für Abwechslung */
  background-image: radial-gradient(1px 1px at 100px 150px, #fff, rgba(0,0,0,0)),
                    radial-gradient(1px 1px at 200px 50px, #eee, rgba(0,0,0,0)),
                    radial-gradient(2px 2px at 30px 200px, #fff, rgba(0,0,0,0)),
                    radial-gradient(1px 1px at 220px 280px, #ddd, rgba(0,0,0,0));
  background-size: 250px 250px; /* Andere Kachelgröße für weniger Symmetrie */
  animation: sparkle-2 4s infinite ease-in-out;
  animation-delay: 1.5s;
}

@keyframes sparkle-1 {
  0%, 100% { opacity: 0.2; }
  50% { opacity: 1; }
}

@keyframes sparkle-2 {
  0%, 100% { opacity: 0.8; }
  50% { opacity: 0.1; }
}
/*Sternhintergrund Ende*/

/*Pois Anfang*/
/* Der klickbare Bereich (Kreis) im SVG */
.poi-group {
    outline: none;
    cursor: pointer;
}

.html-tooltip {
    position: fixed;
    z-index: 1000;

    font-size: 16px;
    line-height: 1.3;
    /*font-family: sans-serif;*/
    color: white;
    background: rgba(0, 0, 0, 0.5);
    padding: 15px 25px;
    border-radius: 12px;
    width: max-content;
    max-width: 500px;
    text-align: left;

    /* Standardmäßig versteckt */
    opacity: 0;
    visibility: hidden;
    pointer-events: none;
    -webkit-transition: opacity 0.3s ease, visibility 0.3s ease;
    transition: opacity 0.3s ease, visibility 0.3s ease;
}

/* Eingeblendet durch JS (.visible-Klasse) */
.html-tooltip.visible {
    opacity: 1;
    visibility: visible;
    pointer-events: auto; /* Damit der Link darin klickbar ist */
}

/* Den Link im Tooltip schön machen */
.html-tooltip a {
    color: white;
    text-decoration: none;
    font-weight: bold;
    pointer-events: auto;
    background: transparent;
}

.html-tooltip a: hover {
    text-decoration: underline;
}

.n8n-overlay {
  display: none;        /* <- Zu Beginn ausgeblendet */
  position: fixed;
  bottom: 20px;         /* Abstand von unten */
  right: 20px;          /* Abstand von rechts - zentriert: left: 50%; transform: translateX(-50%); */
  width: 400px;         /* Breite des Popups */
  max-width: 90%;       /* Für mobile Geräte */
  z-index: 99999;       /* Stellt sicher, dass es über allem liegt */
  box-shadow: 0 10px 30px rgba(0,0,0,0.2);
  border-radius: 12px;
  background: #ffffff;
  overflow: hidden;
}

.n8n-popup iframe {
  display: block;
  width: 100%;
  height: 450px;        /* Höhe des n8n Formulars anpassen */
  border: none;
}

.n8n-close-btn {
  position: absolute;
  top: 10px;
  right: 15px;
  background: none;
  border: none;
  font-size: 18px;
  cursor: pointer;
  color: #333;
}
/*Pois Ende*/

@media (max-width: 1207px) {
  .map-wrapper {
    width: 100%;
    overflow-x: auto;
    -webkit-overflow-scrolling: touch; /* Smooth scroll auf iOS */
  }

  .map-wrapper svg {
    height: 100vh !important;  /* Volle Bildschirmhöhe */
    width: auto !important;    /* Breite passt sich proportional an */
    max-width: none !important; /* Inline-Style überschreiben */
    display: block;
  }

  h1 {
    font-size: 64px;
    margin-top: 80px;
    padding: 0 30px;
  }

  h2 {
    font-size: 54px;
  }

  p, a {
    font-size: 44px;
  } 

  .n8n-overlay {
    width: 100vw;
    max-width: 100vw;
    border-radius: 0;
  }

  .n8n-popup iframe {
    transform: scale(2);
    transform-origin: top center;
    width: 80%;
    margin-left: 10%;
    height: calc((100vh - 45px) / 1.5);
  }

  .n8n-close-btn {
    z-index: 100000;
    background: rgba(255, 255, 255, 0.85);
    border-radius: 50%;
    padding: 4px 9px;
  }


}
