body, html {
      height: 100%;
      margin: 0;
    }
    .bg-overlay h1, h1 {
      font-family: 'Lora', serif;
    }
    .bg-overlay h2, h2 {
      font-family: 'Lora', serif;
    }

    .bg-overlay h4,
    .bg-overlay p {
      font-family: 'Roboto', sans-serif;
    }
    .bg-cover {
      /* background: url('./images/Kunst-intro.jpg') no-repeat center center;*/
      background-size: cover;
      height: 100vh;
      display: flex;
      flex-direction: column;
      justify-content: space-between;
    }
    .bg-light {
        background-color: #e9ecef !important;
    }
    section[id] {
        scroll-margin-top: 120px;
    }

    /* Navbar Grunddesign */
    .navbar {
      transition: background-color 0.4s, padding 0.4s;
      padding: 0.75rem;
    }
    /* Logo Mindesthöhe */
    .navbar-brand img {
      height: 60px;
      max-height: 60px;
    }
    /* Anfänglicher halbtransparenter Hintergrund */
    .navbar.semi-transparent {
      background: rgba(255,255,255,0.8); /* grau halbtransparent */
    }
    /* Nach Scrollen */
    .navbar.scrolled {
      background: white;
      box-shadow: 0 2px 10px rgba(0,0,0,0.1);
      padding: 0.5rem;
    }

    /* Farben für Links */
    .navbar .nav-link {
      color: #33332e !important;
      transition: color 0.3s;
    }
    .navbar .nav-link:hover {
      color: #2e7a6b !important;
    }
    .navbar .nav-link.active {
      color: #33332e!important;
        font-weight: 700;
    }

    /* Social Icons */
    .social-icons a {
      color: #ffd700;
      font-size: 1.5rem;
      margin: 0 10px;
      transition: color 0.3s;
    }
    .social-icons a:hover {
      color: #8a8a5cff;
    }

    /* Dummy-Content zum Scrollen */
    .content {
      height: 100vh;
      background: #f8f9fa;
      padding-top: 100px;
      text-align: center;
    }
    .bg-overlay {
      background-color: rgba(255, 255, 255, 0.6); /* Weiß, 60% transparent */
      border-radius: 10px; /* optional, falls leicht abgerundet gewünscht */
      padding: 20px;       /* etwas Abstand um den Text */
      border-radius: 10px; /* leichte Rundung */
      max-width: 500px; /* verhindert, dass der Block zu breit wird */
    }
    .uppercase {
      text-transform: uppercase;
    }

/* Globale Hero-Klasse */
    .page-hero {
      height: 70vh;
      background-size: cover;
      background-position: center;
      background-repeat: no-repeat;
      display: flex;
      align-items: center;
      justify-content: center;
      position: relative;
      color: white;
      padding-top: 70px; /* Platz schaffen unter Menü */
      background-position: center top;
    }
      /* Mobile-Version */
    @media (max-width: 768px) {
      .page-hero {
        background-position: 30% top; /* zeigt den oberen Bereich des Bildes */
      }
    }
    /* iPad Portrait (bis 1024px Höhe im Hochformat) */
    @media (min-width: 769px) and (max-width: 1024px) and (orientation: portrait) {
      .page-hero {
        background-position: 35% top; /* extra Feinjustierung nur für iPad Portrait */
      }
    }
    .postcard-card {
      box-shadow: 0 4px 21px -12px rgba(0, 0, 0, 0.66);
      border: none;
      border-radius: 12px;
      padding: 20px;
      margin-bottom: 20px;
      background: linear-gradient(135deg, #e1e5ea 0%, #e1e5ea 100%);
    }
    .postcard-card img {
      transition: transform 0.3s ease; /* sanfte Bewegung */
      cursor: pointer; /* zeigt an, dass es klickbar ist */
    }

    .postcard-card img:hover {
      transform: scale(0.95); /* leicht verkleinern */
    }


    /* Optional: Overlay für bessere Lesbarkeit */
    .page-hero::before {
      content: "";
      position: absolute;
      top: 0; left: 0;
      width: 100%; height: 100%;
      background: rgba(0,0,0,0.3);
      z-index: 0;
    }

    /* Inhalt im Vordergrund */
    .page-hero .hero-content {
      position: relative;
      z-index: 1;
      text-align: center;
    }
    .postcard-card:nth-child(even) .row {
      flex-direction: row-reverse;
    }
/* Honeypot – für Menschen & Screenreader unsichtbar */
    .honeypot {
        position: absolute !important;
        left: -9999px !important;
        width: 1px;
        height: 1px;
        overflow: hidden;
    }
/* Desktop & größere Screens */
@media (min-width: 992px) {
    .contact-form-wrapper {
        max-width: 960px;   /* oder 900px / 1000px – nach Geschmack */
        padding-left: 2rem;
        padding-right: 2rem;
    }
}

