/* Karte ohne weißen Kasten, sauber skaliert */
.mapbox {
  border-radius: 1rem;
  overflow: hidden;
  border: 1px solid rgba(220,53,69,.2); /* leicht passend zur Primärfarbe */
  box-shadow: 0 14px 40px rgba(220,53,69,.10);
  background: transparent; /* kein weißer Hintergrund */
  min-height: 320px;       /* fallback falls ratio nicht greift */
}
.mapbox .map-embed {
  width: 100%;
  height: 100%;
  border: 0;
  display: block;
}

/* Kachel rechts etwas präsenter */
.tile {
  background:#fff;
  border-radius:1rem;
  padding:1.25rem;
  position:relative;
}
.tile:before{
  content:"";
  position:absolute; inset:-1px;
  border-radius:1.05rem; padding:1px;
  background:linear-gradient(135deg, rgba(220,53,69,.45), rgba(220,53,69,.18));
  -webkit-mask:linear-gradient(#fff 0 0) content-box,linear-gradient(#fff 0 0);
  -webkit-mask-composite:xor; mask-composite:exclude;
}
:root{ --nav-h: 80px; }           /* Default, wird per JS überschrieben */
html{ scroll-behavior: smooth; }

/* Moderne Browser: Offset bei allen IDs */
[id]{ scroll-margin-top: var(--nav-h); }

/* Fallback für direkte #hash-Ladung (ältere Browser) */
section[id]::before,
div[id]::before{
  content:"";
  display:block;
  height: var(--nav-h);
  margin-top: calc(-1 * var(--nav-h));
  visibility:hidden;
}

/* Optional: Content nicht unter die fixed-top Navbar schieben */
body{ padding-top: var(--nav-h); }
