/*
 * application.css
 */

/*
 * Variales
 */

:root {

  --color_black: #000;
  --color_blue: #0d6efd;
  --color_danger: #dc3545;
  --color_dark: #212529;
  --color_gray_235: rgb(235,235,235);
  --color_green: #198754;
  --color_muted: #6c757d;
  --color_primary: var(--color_blue);
  --color_secondary: #6c757d;
  --color_success: var(--color_green);
  --color_white: #fff;
  --color_yellow: #ffc107;

  --font_sans_serif: system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", "Roboto", "Helvetica Neue", Arial, "Noto Sans", "Liberation Sans", sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";
  --font_serif: serif;

  --font_weight_light: 300;
  --font_weight_regular: 400;
  --font_weight_normal: var(--font_weight_regular);
  --font_weight_medium: 500;
  --font_weight_bold: 700;

}



/*
 * Forms
 */

label.required &:after {
  content: '*';
  display: inline-block;
  margin-left: 3px;
  color: var(--color_muted);
}

.btn.btn-primary-hover
{
  &:hover,
  &:active,
  &:focus
  {
    border-color: var(--color_primary);
    background-color: var(--color_primary);
    color: var(--color_white);
  }
}

.btn.btn-secondary-hover
{
  &:hover,
  &:active,
  &:focus
  {
    border-color: var(--color_secondary);
    background-color: var(--color_secondary);
    color: var(--color_white);
  }
}

.btn.btn-success-hover
{
  &:hover,
  &:active,
  &:focus
  {
    border-color: var(--color_success);
    background-color: var(--color_success);
    color: var(--color_white);
  }
}

.btn.btn-danger-hover
{
  &:hover,
  &:active,
  &:focus
  {
    border-color: var(--color_danger);
    background-color: var(--color_danger);
    color: var(--color_white);
  }
}



/*
 * Helpers
 */

.hidden { display: none; }



/*
 * Icons
 */

.icon-sm { font-size: .8rem; }

.icon-xxl { display: block; font-size: 4rem; }



/*
 * Navigation
 */

@media screen {

  /* Main Navigation */

  nav#navigation {

    a.navbar-brand,
    a.navbar-brand:link,
    a.navbar-brand:visited {
      font-size: 1.2rem;

      strong {
        font-weight: var(--font_weight_bold);
      }
    } /* /a.navbar-brand */

  } /* /nav#navigation */


  /* Sticky Menu */

  .sticky-menu
  {
    position: fixed;
    top: 57px;
    left: 0;
    right: 0;

    border-bottom: 1px solid var(--color_gray_235);

    background-color: var(--color_white);

    z-index: 100;
  }

  .sticky-menu-margin
  {
    margin-top: 71px;
  }


  .dropdown-toggle.no-caret::after
  {
    display: none;
  }

} /* /MQ: screen */



/*
 * Typography
 */

a,
a:link,
a:visited
{
  text-decoration: none;
}

h3.application-form-field-headline {
  small {
    font-size: 1.2rem;
  }
}



/*
 * Frontend: Header
 */

body.fe
{

  header
  {
    margin: 32px 0 32px;
    text-align: center;

    h1
    {
      a,
      a:link,
      a:visited
      {
        display: inline-block;
        width: 320px;
        height: 115px;

        background-image: url("/assets/logo-6b76505b.png");
        background-repeat: no-repeat;
        background-position: top center;
        background-size: contain;

        text-indent: -9999rem;

        transform: scale(.9,.9);
        -ms-transform: scale(.9,.9);
        -moz-transform: scale(.9,.9);
        -webkit-transform: scale(.9,.9);
        transition: transform .2s ease-out;
      }

      a:hover,
      a:focus,
      a:active
      {
        transform: scale(1,1);
        -ms-transform: scale(1,1);
        -moz-transform: scale(1,1);
        -webkit-transform: scale(1,1);
      }
    } /* /h1 */

    hr
    {
      display: none;
    }
  } /* /header */

}



/*
 * Frontend: Content Area
 */

body.fe
{
  .toptitle
  {
    margin: 0;
    padding: 0;
    font-size: 1rem;
    font-weight: var(--font_weight_bold);
    text-align: center;
    text-transform: uppercase;
  }

  .headline
  {
    margin-bottom: 0;
    padding-bottom: 0;
    text-align: center;
  }

  .subtitle
  {
    margin: 0 0 32px;
    padding: 0;
    font-size: 1.6rem;
    font-weight: light;
    text-align: center;
  }

} /* /Frontend */



/*
 * Frontend: Footer
 */

body.fe
{

  footer
  {
    margin: 64px 0 32px;

    font-size: .85rem;
    text-align: center;
    color: var(--color_muted);

    p,
    ul
    {
      margin: 0;
      padding: 0;
    }

    p
    {
      margin-top: 4px;
    }

    a,
    a:link,
    a:visited
    {
      border-bottom: 1px solid var(--color_muted);
      text-decoration: none;
      color: var(--color_muted);
      transition: all .2s ease-out;
    } /* /a */

    a:hover,
    a:active,
    a:focus
    {
      border-color: var(--color_black);
      color: var(--color_black);
    }
  } /* /footer */

} /* /Frontend */



/*
 * Backend: Document
 */

body.be
{

  padding-top: 57px;

  h2 small
  {
    font-size: 1.2rem;
  }

}

.cursor-forbidden,
.dropdown-item.disabled.cursor-forbidden {
  pointer-events: auto;
  cursor: not-allowed;
}


@media screen and (min-width: 992px) {
  .three-columns {
    -webkit-column-count: 3;
    -moz-column-count: 3;
    column-count: 3;
  }
} /* /MQ lg */
