/**
 * @file
 * Campaign variant visibility. An element carrying data-ln-variant is shown
 * only when it matches the variant on <html>, which js/utm-variant.js sets from
 * utm_content before the body is parsed — so the wrong variant is never painted.
 *
 * Site-wide, not attached with the UTM script: without these rules a tagged
 * block would simply render, so every variant would show at once anywhere the
 * script is absent. With them and no script, variant 1 shows, which is correct.
 */

[data-ln-variant] {
  display: none;
}

/**
 * The default case is the absence of a class, so it is asserted rather than
 * inherited: :not() on both non-default variants, otherwise a page with
 * .ln-variant-2 would show variant 1 as well.
 */
html:not(.ln-variant-2):not(.ln-variant-3) [data-ln-variant="1"],
html.ln-variant-2 [data-ln-variant="2"],
html.ln-variant-3 [data-ln-variant="3"] {
  display: revert;
}
