/* Spalten-Option "100% Width" - Grundregeln (Desktop und aufwaerts).

   Der Container steht auf "Site Width": die Spaltenreihe ist auf die
   Seitenbreite begrenzt und mittig gesetzt. Eine markierte Spalte wird ueber
   diese Grenze hinaus bis zum Fensterrand verlaengert ("Full-Bleed") -
   wahlweise nach beiden Seiten oder nur nach einer.

   Der Ueberstand je Seite ist immer gleich:

     Ueberstand = (Fensterbreite - Reihenbreite) / 2

   In CSS bezieht sich 100% innerhalb von width und margin auf die Reihe -
   damit laesst sich der Wert ohne feste Zahlen ausdruecken. Die Spalte wird um
   den Ueberstand breiter UND per negativem Aussenabstand um denselben Betrag
   zurueckgezogen: Ihre aeussere Breite im Flex-Layout bleibt dadurch exakt die
   alte, die Nachbarspalte verschiebt sich nicht, und die Seite laeuft nicht
   horizontal ueber.

   --awb-bl / --awb-br sind Schalter (0 oder 1) fuer links und rechts. Das
   Plugin schreibt sie je Geraet als --awb-bl-l/-m/-s bzw. --awb-br-l/-m/-s an
   die Spalte; die Dateien -md und -sm setzen sie im jeweiligen Breakpoint um.
   Multiplikation mit 0 macht Ueberstand und Aussenabstand sauber zu Null.

   --awb-col-width ist Avadas eigene Variable fuer die Spaltenbreite (pro
   Spaltengroesse UND pro Breakpoint gesetzt) - deshalb rechnet diese Datei
   damit, statt eine feste Breite zu erzwingen.

   --awb-viewport-width setzt column-full-width.js auf die Fensterbreite OHNE
   Scrollbalken; 100vw ist nur der Notfall-Wert, falls das JS nicht laeuft.

   Avada erzeugt fuer jede Spalte eigenes CSS mit !important (Breite, Abstaende).
   Die mehrfach wiederholte Klasse hebt die Spezifitaet hier ueber diese Regeln -
   unabhaengig davon, in welcher Reihenfolge die Stylesheets geladen werden. */
.awb-col-bleed {
  --awb-col-bleed: calc((var(--awb-viewport-width, 100vw) - 100%) / 2);
  --awb-bl: var(--awb-bl-l, 0);
  --awb-br: var(--awb-br-l, 0);
}

.awb-col-bleed,
.fusion-body .awb-col-bleed.awb-col-bleed.awb-col-bleed.awb-col-bleed.awb-col-bleed {
  width: calc(var(--awb-col-width, 100%) + var(--awb-col-bleed) * (var(--awb-bl) + var(--awb-br))) !important;
  max-width: none !important;
  flex-basis: auto !important;
  flex-grow: 0 !important;
  flex-shrink: 0 !important;
  margin-left: calc(-1 * var(--awb-col-bleed) * var(--awb-bl)) !important;
  margin-right: calc(-1 * var(--awb-col-bleed) * var(--awb-br)) !important;
}

/* Auf der verlaengerten Seite den Spaltenabstand aufheben.

   Avada legt den Spaltenabstand (Standard 4%) als Aussenabstand auf den inneren
   .fusion-column-wrapper - und der traegt Hintergrund und Rahmen. Ohne diese
   Zeilen bliebe der Hintergrund also ein Stueck vor dem Fensterrand stehen.
   Der Faktor (1 - Schalter) laesst den Abstand auf der anderen Seite und auf
   Geraeten ohne Ueberstand unveraendert. */
.fusion-layout-column.awb-col-bleed.awb-col-bleed.awb-col-bleed {
  --awb-spacing-left: calc(var(--awb-spacing-left-large, 4%) * (1 - var(--awb-bl)));
  --awb-spacing-right: calc(var(--awb-spacing-right-large, 4%) * (1 - var(--awb-br)));
}
