@font-face{
  font-family:'Montserrat';
  src:url('../fonts/Montserrat-400-latin.woff2') format('woff2');
  font-weight:400; font-style:normal; font-display:swap;
}
@font-face{
  font-family:'Montserrat';
  src:url('../fonts/Montserrat-700-latin.woff2') format('woff2');
  font-weight:700; font-style:normal; font-display:swap;
}
@font-face{
  font-family:'Great Vibes';
  src:url('../fonts/GreatVibes-400-latin.woff2') format('woff2');
  font-weight:400; font-style:normal; font-display:swap;
}

body {
  position: relative;        /* NEU */
  margin: 0;
  min-height: 300vh;
  background: #0b0b0b;
  overflow-x: hidden;
  font-family: 'Montserrat', sans-serif;
  font-weight: 400;
  color: #111;
}

/* optional für spezielle Überschriften */
h1 {
  font-family: 'Great Vibes', cursive;
  font-weight: 400;
  font-size: 3rem;
  color: var(--brand);
  text-align: center;
}

h2, h3, h4, h5, h6 {
  font-family: 'Montserrat', sans-serif;
  font-weight: 400;
  font-style: normal;   /* für eleganten Look */
}


/* Hintergrund-Container: nicht negativ z-indexen */
#bg-wrap{
  position: fixed;
  inset: 0;
  z-index: 0;                /* WAR -1 -> JETZT 0 */
  overflow: hidden;
}

/* Dein Bild */
#bg{
  position: absolute;
  top: 0;
  left: 50%;
  transform: translateX(-50%) translateY(0);
  width: calc(100vw * var(--parallax-scale));
  height: auto;
  display: block;
  will-change: transform;
}

/* Variablen belassen wie gehabt */
:root{
  --parallax-scale: 1.25;
  --parallax-speed: 0.2;
}

/* --- Mobile: Hintergrund immer vollfl�chig, kein Schwarzrand --- */
@media (max-width: 768px) {
  :root {
    --parallax-speed: 0;      /* Parallax optional aus auf Mobile */
    --parallax-center-x: 0;   /* WICHTIG: X-Zentrierung AUS -> kein translateX(-50%) */
  }

  #bg {
    left: 0;                  /* statt 50% */
    width: 100vw;
    height: 100vh;
    transform: none;          /* Startzustand; JS setzt nur noch translateY(...) */
    object-fit: cover;        /* proportional f�llen */
    object-position: center;  /* mittig beschneiden */
  }
}

main {
  
  margin-top: 2rem; /* etwas mehr Abstand zum oberen Rand */
}

main .col-10 {
  background-color: rgba(255, 255, 255, 0.8) !important;
  backdrop-filter: blur(6px);
  box-shadow: 0 8px 30px rgba(0, 0, 0, 0.25) !important;
  border: none;
  border-radius: 1rem; /* falls abgerundet schwach sichtbar war */
}

main .row > .col-10 {
  max-width: 900px;
}

.center{
	text-align:center;
}

/* Alles ausblenden */
.select { display: none; }

/* Einblenden, wenn Wrapper-Klassen passen */
.du.single  .select.du.single  { display: initial; }
.du.group   .select.du.group    { display: initial; }
.sie.single .select.sie.single { display: initial; }
.sie.group  .select.sie.group   { display: initial; }

/* Grundstil für alle Divider */
.divider {
  border: 0;
  width: 60%;              /* zentriert, nicht über die volle Breite */
  margin: 2.5rem auto;     /* Luft nach oben/unten */
  display: block;
}

/* Rosenband-Divider */
.divider-roses {
  height: 20px; /* Standardhöhe für Desktop */
  background: center / auto 100% repeat-x url("../images/rosenband.png");
  background-repeat: repeat-x;
  background-position: center;
  background-size: auto 100%;
  opacity: 0.6;
  filter: brightness(0.98);
}

.divider-vintage2 {
  border: 0;
  display: block;
  height:10px !important;
  margin: 2.5rem auto;

  height: 33px;                   /* entspricht deinem SVG (height="33px") */
  background-position: center center; /* mittig horizontal und vertikal */
  background-repeat: no-repeat;   /* NICHT wiederholen */
  background-size: contain;       /* proportional skalieren, bis es in die Breite passt */
  opacity: 0.9;

  background-image: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 700.319 26.663'><g><path fill='%23232122' d='M5.182 9.628c2.961,1.482 5.182,2.222 8.143,3.703 -2.221,1.481 -3.701,1.481 -6.662,2.963 -3.702,2.962 -5.182,2.222 -6.663,5.184 11.104,0 25.17,-5.925 37.015,-5.925 14.066,0 28.871,0 42.937,0 78.471,0 159.163,0.741 236.894,0 9.624,0 5.923,0.741 11.845,5.185 0.74,0 0.74,0.74 1.48,0.74 3.702,0.741 -2.961,0.741 2.221,0 3.702,-0.74 -3.701,-6.666 -5.182,-8.147 2.221,-2.221 7.403,-3.703 5.182,-7.406 -0.74,-0.741 -2.221,-0.741 -3.701,0 -3.702,2.222 -1.481,5.185 -11.105,5.185 -78.471,-0.741 -159.163,0 -237.634,0 -51.08,0 -32.573,2.221 -75.51,-5.185 -2.961,-0.741 -2.961,-1.481 -4.442,0l5.182 3.703z'/><path fill='%23232122' d='M372.368 13.331c-2.221,3.704 -4.441,2.963 -5.922,6.666 1.481,1.481 0.74,0.741 1.481,1.481 5.922,0 4.441,-5.925 14.805,-5.925 92.537,0.741 187.295,-0.741 279.832,0 5.922,0 12.585,1.482 18.507,2.963 3.702,0.74 16.287,3.703 19.248,2.222 -0.74,-0.741 -0.74,-0.741 -1.481,-1.482 -3.701,-2.221 -9.624,-5.184 -11.104,-5.925 3.701,-1.481 9.624,-3.703 12.585,-7.406 -0.74,-0.741 0,-0.741 -1.481,-0.741 -1.48,0 -0.74,0 -2.221,0l-14.806 2.963c-5.922,1.481 -13.325,2.963 -19.247,2.963 -74.03,0.74 -151.761,0 -225.79,0l-56.262 0c-6.663,0 -14.066,-11.11 -13.326,-3.704 0,1.481 3.702,3.704 5.182,5.925z'/><path fill='%23232122' d='M352.38 24.441l0.74 -1.481 1.481 -0.741c-0.74,-1.481 -0.74,-1.481 0,-1.481 0,-1.482 -0.74,-0.741 0.74,-0.741 0,-1.481 0,-0.741 0.741,-0.741 0,-0.74 0,-0.74 0.74,0 0.741,-1.481 -0.74,-1.481 1.481,-1.481l1.48 -0.74c0,-0.741 -0.74,-0.741 1.481,-0.741 1.48,-1.482 1.48,-1.482 3.701,-1.482l1.481 0 0 -2.962c-2.221,0 -1.481,0.741 -1.481,0 -2.961,-0.74 -2.961,0 -4.441,-1.481 -1.481,0 -1.481,0.741 -1.481,-0.741 -5.182,-2.962 -5.182,-7.406 -8.884,-9.628 -2.961,1.481 -3.701,5.925 -6.662,8.147 -2.221,2.222 -8.143,2.222 -9.624,5.184 1.481,2.222 1.481,1.481 4.442,2.963 8.883,2.962 8.143,8.147 11.844,10.369 2.221,-1.482 0.741,0 2.221,-2.222z'/><path fill='%23A9A6A6' d='M6.663 16.294c2.961,-1.482 4.441,-1.482 6.662,-2.963 -2.961,-1.481 -5.182,-2.221 -8.143,-3.703l2.221 2.222c1.481,0 0.74,0 1.481,0.741 2.22,0.74 0.74,0 1.48,0.74l-2.961 2.222c-0.74,0 -0.74,0 -0.74,0.741z'/><path fill='%23A9A6A6' d='M360.524 10.369c1.48,1.481 1.48,0.741 4.441,1.481 0,0.741 -0.74,0 1.481,0l0 2.962 -1.481 0c-2.221,0 -2.221,0 -3.701,1.482 -2.221,0 -1.481,0 -1.481,0.741l-1.48 0.74c-2.221,0 -0.74,0 -1.481,1.481 -0.74,-0.74 -0.74,-0.74 -0.74,0 -0.741,0 -0.741,-0.74 -0.741,0.741 -1.48,0 -0.74,-0.741 -0.74,0.741 -0.74,0 -0.74,0 0,1.481l-1.481 0.741 -0.74 1.481c1.481,0 0.74,0 0.74,-1.481l1.481 -0.741c0.74,0 0.74,0 0,-1.481 1.481,0 0.74,0.74 0.74,-0.741 1.481,0 1.481,0.741 0.741,-0.741 1.481,0.741 1.481,0.741 0.74,0l1.481 -1.481 1.48 -0.74 1.481 -0.741 3.701 -1.482c1.481,0.741 1.481,1.482 1.481,0 0,0 0,-0.74 0,-0.74 0,0 0,-0.741 0,-0.741 0.74,-1.481 1.481,-1.481 0,-1.481 -0.741,-0.74 1.481,-1.481 -1.481,0l-4.441 -1.481 -1.481 -0.741c0,1.482 0,0.741 1.481,0.741z'/></g></svg>");
}


/* 📱 Responsiv: etwas kleiner auf Tablets */
@media (max-width: 768px) {
  .divider-roses {
    height: 24px;
    width: 85%;
  }
}/* Vintage-Divider (SVG direkt aus CSS, mittig, keine Wiederholung) */

/* Responsive Feintuning */
@media (max-width: 768px) {
  .divider-vintage { height: 26px; width: 85%; }
}
@media (max-width: 480px) {
  .divider-vintage { height: 22px; width: 90%; }
}


/* 📱📱 Responsiv: noch feiner auf Hochkant-Smartphones */
@media (max-width: 480px) {
  .divider-roses {
    height: 20px;
    width: 90%;
  }
}


.divider-vintage {
  border: 0;
  display: block;
  margin: 2.5rem auto;
  height: 20px;
  background-repeat: no-repeat;
  background-position: center;
  background-size: contain;
  opacity: 0.3;
  color: var(--divider-color, #6E1222);
  background-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 2039.232 123.309' aria-hidden='true'><g><polygon fill='%238B1E3F' stroke='%238B1E3F' stroke-width='3.033' stroke-miterlimit='22.9256' points='999.653,12.522 960.591,3.215 969.333,43.124 978.783,43.688 978.783,82.609 967.642,82.609 959.039,121.25 996.692,111.943 996.692,101.929 1046.895,101.929 1046.628,111.213 1084.266,118.853 1073.548,82.046 1061.421,82.046 1061.421,42.419 1072.138,42.419 1081.303,2.087 1041.818,12.24 1041.818,24.086 999.653,24.086'/><line x1='1090.145' y1='64.319' x2='2026.592' y2='64.319' stroke='%238B1E3F' stroke-width='8.027' stroke-miterlimit='22.9256' fill='none'/><circle cx='2026.592' cy='64.319' r='12.64' fill='%238B1E3F'/><line x1='949.088' y1='64.319' x2='12.64' y2='64.319' stroke='%238B1E3F' stroke-width='8.027' stroke-miterlimit='22.9256' fill='none'/><circle cx='12.64' cy='64.319' r='12.64' fill='%238B1E3F'/></g></svg>");
}


@media (max-width:768px) {
  .divider-vintage { height: 40px; width: 85%; }
}
@media (max-width:480px) {
  .divider-vintage { height: 34px; width: 90%; }
}

