

  /* =Promotion
  ----------------------------------------------- */
  .promotion {
    padding-top: 1.5em;
    padding-bottom: 1.5em;
    text-align: center;
  }
  .promotion .icon {
    display: inline-block;
    margin-right: 0.75em;
    vertical-align: middle;
    display: none;
  }
  .promotion .icon svg {
    width: auto;
    height: 2em;
    display: block;
    margin-top: -0.25em;
    margin-bottom: -0.25em;
  }
  .promotion .icon svg circle,
  .promotion .icon svg path,
  .promotion .icon svg line,
  .promotion .icon svg polygon,
  .promotion .icon svg polyline {
    stroke: currentColor;
    stroke-width: 2px;
  }
  .promotion .icon,
  .promotion strong,
  .promotion a {
    color: inherit;
    font-weight: 600;
  }
  .promotion strong,
  .promotion a {
    display: inline-block;
  }
  .promotion a:hover,
  .promotion a:active,
  .promotion a:focus {
    color: var(--primary-color, inherit);
  }
  .promotion h1,
  .promotion p {
    display: inline;
  }
  .promotion h1 {
    max-width: none;
    font-size: inherit;
    font-weight: bold;
    text-transform: none;
    letter-spacing: inherit;
  }
  .promotion p {
    font-size: inherit;
  }
  .promotion small {
    /*! font-size: inherit; */
    /*! font-style: inherit; */
  }
  .promotion {
    margin-left: -1.5em;
    margin-right: -1.5em;
    padding-left: 1.5em;
    padding-right: 1.5em;
  }
  @media (min-width: 40em) {
    .promotion {
      margin-left: -4.5em;
      margin-right: -4.5em;
      padding-left: 4.5em;
      padding-right: 4.5em;
    }
  }

/*  .promotion {
    position: relative;
  }
  .promotion::before {
    content: "";
    background-color: var(--primary-color);
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    opacity: 0.2;
    z-index: -1;
  }*/


  .promotion .action {
    font-size: 0.75em;
    display: block;
    max-width: none;
  }
  .promotion .action a {
    background-color: white;
    border-color: black;
    color: black;

    background-color: var(--snow);
    border-color: var(--primary-color, black);
    color: var(--primary-color, black);
  }
  .promotion .action a:hover,
  .promotion .action a:active,
  .promotion .action a:focus {
    background-color: black;
    color: white;

    background-color: var(--primary-color, black);
    color: var(--snow, white);
  }


  @media (min-width: 70em) {
    .promotion .action--short-text {
      display: inline-block;
      margin-top: -1.25em;
      margin-left: 1.5em;
      margin-bottom: -1em;
      vertical-align: middle;
    }
  }


  @media (min-width: 90em) {
    .promotion .action {
      display: inline-block;
      margin-top: -1.25em;
      margin-left: 1.5em;
      margin-bottom: -1em;
      vertical-align: middle;
    }
  }


  /* SHIM: Switch to a grid layout */
  @supports (display: grid) {
    .promotion .action {
      margin-top: 2.25em;
      margin-bottom: 0.75em;
    }
    @media (min-width: 40em) {
      .promotion {
        display: grid;
        grid-template-columns: 1fr 2fr;
        grid-gap: 2.25em;
      }
      .promotion h1,
      .promotion p {
        grid-row: 1 / 2;
        grid-column: -2 / -1;
        justify-self: start;
        text-align: start;
        margin: 0;
        align-self: center;
        max-width: unset;
      }
      .promotion .action {
        grid-row: 1 / 2;
        grid-column: 1 / 2;
        justify-self: end;
        margin: 0;
        align-self: center;
        text-align: center;
      }
    }
  }


  body .header-figure.has-caption.has-caption-details .caption h1 {
    color: var(--primary-color);
    text-align: center !important;
    max-width: none !important;
    width: calc(100% - 6rem) !important;
    font-size: 2em !important;
  }
/*  .header-figure.has-caption.has-caption-details img {
    height: 75vw !important;
  }*/
  @media (min-width: 50em) {
    body .header-figure.has-caption.has-caption-details .caption h1 {
      font-size: 6vmax !important;
      width: calc(100% - 9rem) !important;
      font-size: 7vmax !important;
    }
/*    .header-figure.has-caption.has-caption-details img {
      height: 70vw !important;
    }*/
  }
/*  @media (min-width: 70em) {
    body .header-figure.has-caption.has-caption-details .caption h1 {
      top: 20.25rem !important;
    }
  }*/
/*  .header-figure.has-caption.has-caption-details .caption .details > * {
    opacity: 0;
  }*/


  /* =Header / Footer
  ----------------------------------------------- */
  header,
  footer {
    /*
    background-color: var(--strawberry);
    color: var(--snow);
    */
    margin-left: -1.5em;
    margin-right: -1.5em;
    padding: 3em 1.5em 1.5em;
    margin-top: 0;
    margin-bottom: 0;
    text-align: center;
  }
  footer {
    background: rgb(245, 245, 245);
    background: rgb(235, 235, 235);
    color: inherit;
    padding: 3em 1.5em 3em;
  }
  @media (min-width: 40em) { /* @medium-size-screen */
    header,
    footer {
      margin-left: -4.5em;
      margin-right: -4.5em;
      padding: 3em 4.5em;
    }
/*    footer {
      padding-top: 2.25em;
      padding-bottom: 3em;
    }*/
  }

  header h2,
  footer h2 {
    margin-bottom: 1.5rem;
  }
  @media (min-width: 40em) {
    header h2,
    footer h2 {
      margin-bottom: 3rem;
    }
  }
  header h2 {
    margin-top: 0;
  }
  footer .action {
    margin-top: 3em;
  }

  /* TRICKY: If any elements on the page are styled with rem units,
             they may render incorrectly in Safari on pages that
             contain detail/summary elements. */
  footer p,
  footer ul {
    max-width: none;
  }


  /* =Lists
  ----------------------------------------------- */
  header ul,
  header li,
  footer ul,
  footer li {
    list-style: none;
    padding-left: 0;
  }
  header ul,
  footer ul {
    margin-left: auto;
    margin-right: auto;
  }
/*  header ul {
    margin-top: -0.625em;
    margin-bottom: -0.625em;
  }*/
  header li,
  footer li {
    display: inline-block;
    vertical-align: middle;
    margin: 0.25em 0.75em;
  }
/*  header ul {
    max-width: none;
  }*/
/*  header .navigation ul:not(.primary),
  footer .navigation ul:not(.primary) {
    margin-right: 0.25em;
    margin-left: 0.25em;
    margin-right: 0.375em;
    margin-left: 0.375em;
  }*/
  header .navigation ul.primary,
  footer .navigation ul.primary {
    margin-top: 0.625em;
    margin-right: 0.25em;
    margin-left: 0.25em;
    margin-bottom: -0.375em; /* SHIM: To offset the bottom margin on the buttons */
  }
  @media (min-width: 40em) {
    header .navigation ul.primary,
    footer .navigation ul.primary {
      margin-bottom: -1.5em; /* SHIM: To offset the bottom margin on the buttons */
    }
  }
  @media (max-width: 30em) {
    header ul.has-5-items,
    footer ul.has-5-items {
      max-width: 15em;
      margin-left: auto !important;
      margin-right: auto !important;
    }
  }
  @media (max-width: 55em) {
    header ul.has-6-items,
    footer ul.has-6-items {
      max-width: 20em;
      margin-left: auto !important;
      margin-right: auto !important;
    }
  }
  @media (max-width: 70em) {
    header ul.has-7-items,
    footer ul.has-7-items {
      max-width: 25em;
      margin-left: auto !important;
      margin-right: auto !important;
    }
  }
  @media (max-width: 70em) {
    header ul.has-8-items,
    footer ul.has-8-items {
      max-width: 30em;
      margin-left: auto !important;
      margin-right: auto !important;
    }
  }
  @media (max-width: 40em) {
    header ul.has-8-items,
    footer ul.has-8-items {
      max-width: 25em;
      margin-left: auto !important;
      margin-right: auto !important;
    }
  }
  @media (max-width: 30em) {
    header ul.has-8-items,
    footer ul.has-8-items {
      max-width: 18em;
      margin-left: auto !important;
      margin-right: auto !important;
    }
  }



  /* =Links
  ----------------------------------------------- */
  header a,
  footer a {
    /*color: var(--snow);*/
    font-weight: 600;
    letter-spacing: 0.05em;
    text-decoration: none;
    text-transform: uppercase;
    letter-spacing: 0.05em;
  }
/*  footer a:hover,
  footer a:active,
  footer a:focus {
    color: var(--strawberry)
  }*/
/*  header .active a,
  header a:hover,
  header a:active,
  header a:focus {
    color: var(--banana);
  }*/
  footer a {
    color: inherit;
  }
  @media (min-width: 60em) {
    footer a {
      /*! font-size: 0.875em; */
    }
  }
  footer small a {
    display: inline-block;
  }

  footer .la2050 p:first-child a {
    font-weight: 700;
  }
  footer .la2050 a svg {
    width: 4.5em;
    height: 1em;

    width: calc(4.5em * 0.875);
    height: calc(1em * 0.875);
  }
  footer .la2050 a svg path {
    fill: currentColor;
  }
  footer .la2050 a {
    text-transform: uppercase;
  }

  header .navigation .primary li,
  footer .navigation .primary li {
    margin: 0.25em 0.75em 1.5em 0.75em;
  }
  header .navigation .primary a,
  footer .navigation .primary a {
    border: 0.1875em solid currentColor;

    padding: 0.375em 0.75em;
    display: inline-block;
  }

  header .navigation .primary a:hover,
  header .navigation .primary a:active,
  header .navigation .primary a:focus,
  footer .navigation .primary a:hover,
  footer .navigation .primary a:active,
  footer .navigation .primary a:focus {
    border: 0.1875em solid currentColor;
  }
  header .navigation strong,
  footer .navigation strong {
    color: inherit;
  }
  header .navigation .primary strong a {
    background: var(--snow);
    border-color: var(--snow);
    color: var(--primary-color);
  }
  footer .navigation .primary strong a {
    background: var(--midnight);
    border-color: var(--midnight);
    color: var(--snow);
  }
  header .navigation .primary strong a:hover,
  header .navigation .primary strong a:active,
  header .navigation .primary strong a:focus {
    color: var(--midnight);
    background-color: var(--secondary-color, white);
    border-color: var(--secondary-color, white);
    color: var(--primary-color, black);
  }
  footer .navigation .primary strong a:hover,
  footer .navigation .primary strong a:active,
  footer .navigation .primary strong a:focus {
    background-color: var(--primary-color);
    border-color: var(--primary-color);
  }


  /* =Logotype
  ----------------------------------------------- */
  header h2,
  footer h2 {
    display: table;
    margin-left: auto;
    margin-right: auto;
    font-weight: 500; /* @medium */
    font-size: 1.3125em;
    text-transform: uppercase;
    color: var(--snow);
    line-height: 1;
    text-align: center;
  }
  footer h2 {
    margin-top: 0;
    color: inherit;
    font-size: inherit;
    max-width: none;
  }
  header h2 span:first-child,
  footer h2 span:first-child {
    letter-spacing: 0.11em;
  }
  header h2 em,
  footer h2 em {
    font-style: italic;
    font-weight: bold;
    color: inherit;
    letter-spacing: 0.24em;
    display: inline-block;
    font-size: 1.2em;
  }
  header h2 a,
  footer h2 a {
    color: inherit;
  }
  header h2 a svg,
  footer h2 a svg {
    width: 6.75em;
    height: 2.0216726459em;
    width: calc(58.8300018/16 * 1.835798006em);
    height: calc(17.6200008/16 * 1.835798006em);

    --multiplier: calc(2em / (17.6200008/16));
    width: calc(58.8300018/16 * var(--multiplier));
    height: calc(17.6200008/16 * var(--multiplier));
  }
  header h2 a svg path,
  footer h2 a svg path {
    fill: currentColor;
  }
/*  header h2 a:hover,
  header h2 a:active,
  header h2 a:focus {
    color: var(--banana);
  }*/

  header .navigation ul:first-child,
  footer .navigation ul:first-child {
    margin-bottom: 0;
  }
  header .navigation ul + ul,
  footer .navigation ul + ul {
    margin-top: 0;
  }

  .la2050-navigation a {
    font-weight: 400;
    text-transform: none;
  }

  /* @media (max-width: 40em) {
    .la2050-navigation {
      padding-left: 0.75em;
    }
  } */

  @media (min-width: 125em) {
    header .navigation,
    footer .navigation {
      display: flex;
      flex-wrap: wrap;
    }
    .la2050-navigation {
      margin-left: 1.5em;
      padding-left: 0.75em;
      border-left: 1px solid;
    }
  }



  /* =Headline
  ----------------------------------------------- */
  main > h1:first-child {
/*    background-color: var(--strawberry);
    color: var(--snow);*/
    margin-left: -1.5rem;
    margin-right: -1.5rem;
    padding: 0 1.5rem 3.75rem;
    margin-top: 0;
    margin-bottom: 1.5rem;
    text-align: center;
    max-width: none;
    position: relative;
    z-index: 1;
    text-transform: uppercase;
    letter-spacing: 0.05em;
  }
  @media (min-width: 40em) { /* @medium-size-screen */
    main > h1:first-child {
      margin-left: -4.5rem;
      margin-right: -4.5rem;
      padding: 3rem 3rem 6rem;
      margin-bottom: 4.5rem; /* @headline-bottom-margin */
    }
  }


  main > h1:first-child .proposal-feature {
    display: grid;
  }
  main > h1:first-child .proposal-feature > * {
    grid-column: 1/-1;
    grid-row: 1/-1;
    align-self: center;
  }
  main > h1:first-child .proposal-feature > span:first-child {
    position: relative;
    z-index: 1;
  }

  main > h1:first-child .proposal-feature .action {
    position: relative;
    z-index: 1;
    font-size: 1rem;
  }

  @media (min-aspect-ratio: 1/1) {
    main > h1:first-child .proposal-feature .action {
      font-size: 1.5rem;
    }
  }

  main > h1:first-child .proposal-images {
    display: grid;
    width: 100%;
    grid-template-columns: repeat(6, 1fr);
    grid-gap: 7px;
    /*! margin: 0 auto 0; */
   
    opacity: 0.5;
  }
  main > h1:first-child .proposal-images img {
    object-fit: cover;
    width: 100%;
    height: calc(85vw / 6);
    margin: 0;
    min-height: 0;
  }

  @media (min-aspect-ratio: 1/1) {
    main > h1:first-child .proposal-images {
      grid-template-columns: repeat(9, 1fr);
    }
    main > h1:first-child .proposal-images img {
      height: calc(85vw / 9);
    }
  }


  @media (max-width: 40em) {
/*    header .navigation ul,
    footer .navigation ul {
      margin-left: -0.75em !important;
      margin-right: -0.75em !important;
    }*/
    header .navigation li,
    footer .navigation li {
      margin: 0.375em 0.25em !important;
    }
    header .navigation li a,
    footer .navigation li a {

    }
  }


  main > h1:first-child svg {
/*     border: 3px solid; */
    padding: 0.5em;
    border-radius: 50%;
    width: 0.75em;
    height: 0.75em;
/*     opacity: 0.5; */
    background: var(--secondary-color);
    color: var(--snow);
margin-top: 1.5em;
  }

