﻿

/************************************
MISC
************************************/
html, body {
  height: 100%;
}

  body._sticky-menu {
    margin-top: var(--navHeight)
  }

.site-wrapper {
    background-image: var(--ps-body-bg-image);
    background-position: center;
    background-repeat: no-repeat;
    background-size: cover;
    display: flex;
    flex-flow: column nowrap;
    width: 100%;
    min-height: 100%;
    position: relative;
}

img.aspect-16-9 {
  aspect-ratio: 16 / 9;
}

/************************************
NAVIGATION
************************************/
header {
  transition: all 0.5s ease 0s;
  position: relative;
}
@media screen and (min-width: 992px) {
  header._sticky .navbar {
    position: fixed;
    top: 0;
    z-index: 99;
    width: 100%;
    background-color: var(--ps-navbar-bg);
    left: 0;
    transition: all 0.2s ease 0s;
    -webkit-box-shadow: 0 0 3px rgba(0,0,0,0.2);
    -ms-box-shadow: 0 0 3px rgba(0,0,0,0.2);
    box-shadow: 0 0 3px rgba(0,0,0,0.2)
  }
}

  /* Main Navbar */
.navbar {
  --bs-navbar-color: var(--ps-nav-link-color);
  --bs-navbar-hover-color: var(--ps-nav-link-hover-color);
  --bs-navbar-active-color: var(--ps-nav-link-active-color);
  --bs-navbar-nav-link-padding-x: 1rem;
  --bs-navbar-toggler-padding-y: 0.50rem;
  --bs-navbar-toggler-padding-x: 1rem;
  --bs-navbar-toggler-font-size: 1rem;
  --bs-navbar-toggler-border-radius: var(--bs-border-radius);
  --ps-nav-position: start;
  background-color: var(--ps-navbar-bg);
  width: 100%;
  transition: ease transform .35s, ease padding .35s;
  border-bottom: 1px solid var(--bs-border-color);
  flex-direction: column;
}

@media(min-width:768px) {
  .navbar[data-navbar-height="low"] {
    --bs-navbar-padding-y: 0.1rem;
  }

  .navbar[data-navbar-height="high"] {
    --bs-navbar-padding-y: 1.5rem;
  }
  .navbar[data-nav-position="center"] {
    --ps-nav-position: center;
  }
  .navbar[data-nav-position="end"] {
    --ps-nav-position: end;
  }
  .navbar-collapse {
    justify-content: var(--ps-nav-position);
  }
}

  .navbar .btn {
    --bs-btn-font-size: var(--ps-nav-link-font-size);
  }

/*    .navbar._no-sticky {
      transform: translateY(-100%);
    }

    .navbar._sticky {
      transform: translateY(0);
    }

  @media(min-width:768px) {
    .navbar {
      --bs-navbar-padding-y: .5rem;
    }

      .navbar._sticky {
        --bs-navbar-padding-y: .5rem;
      }
  }*/

  @media(max-width:991px) {
    .navbar {
      --bs-navbar-nav-link-padding-x: 1rem;
    }
  }

  .navbar-main .navbar-nav {
    --bs-nav-link-font-size: var(--ps-nav-link-font-size);
    --bs-nav-link-font-weight: var(--ps-nav-link-font-weight);
    flex-wrap: wrap;
  }

  .nav-link {
    border-radius: var(--bs-border-radius);
  }

  .navbar .nav-link[aria-expanded="true"] .fa-angle-down {
    transform: rotate(-180deg);
  }

  .nav-link:focus,
  .nav-link:hover,
  .nav-link.hover {
    color: var(--bs-nav-link-hover-color);
    background-color: var(--ps-nav-link-hover-bg);
  }

  .navbar .navbar-nav .nav-link.active,
  .navbar .navbar-nav .show > .nav-link {
    color: var(--bs-navbar-active-color);
    background-color: var(--ps-nav-link-active-bg);
  }

  .navbar-main .navbar-nav .nav-link.hover > .fa {
    transform: rotate(-180deg);
  }

  /* Shortcut navbar */
  .navbar-shortcuts-top {
   margin-bottom: 0.5rem;
    align-self:end;
  }

@media (max-width: 991px) {
  .navbar-shortcuts-top {
    display: none;
  }
}

.navbar-shortcuts {
  display: flex;
  gap: 1rem;
  align-items: center;
}

.navbar-shortcuts > div {
  flex-shrink: 0;
}

@media (max-width: 991px) {
  .navbar .navbar-shortcuts {
    display: none;
  }
}

  /* Brand/logo */
  .navbar-logo.logo-size-liten {
    height: 40px;
  }

  .navbar-logo.logo-size-medium {
    height: 50px;
  }

  .navbar-logo.logo-size-stor {
    height: 70px;
  }

  @media(max-width:991px) {
    .navbar-logo {
      height: 30px !important;
    }
  }

  /* Mobile toggler */
  .navbar-toggler {
    background-color: rgba(var(--bs-primary-rgb),1);
    color: rgba(var(--ps-primary-text-rgb),1);
  }

  /* Mega menu */
.mega-menu {
  --mm-bg-color: var(--ps-navbar-bg);
  --mm-link-gutter: .5rem;
  --mm-link-padding-y: .5rem;
  --mm-link-padding-x: .5rem;
  position: absolute;
  z-index: 1000;
  top: calc(var(--navHeight) + 1px);
  left: 0;
  width: 100%;
  background-color: var(--mm-bg-color);
  box-shadow: 0 2rem 3rem rgba(0,0,0,.075) !important;
  border-bottom: 1px solid var(--bs-border-color);
}

    .mega-menu ._wrapper {
      position: relative;
      z-index: 100;
      padding: 2rem 0;
    }

          .mega-menu ._wrapper::before,
          .mega-menu ._wrapper::after {
            clear:both;
            display: table;
            content:"";
          }


  .mega-menu-backdrop {
    position: fixed;
    display: none;
    top: 0;
    z-index: 10;
    width: 100vw;
    height: 100vh;
    background-color: rgba(0,0,0,0.2);
    backdrop-filter: blur(2px);
  }

  .mega-menu.show .mega-menu-backdrop {
    display: block;
  }

  .megamenu-list {
    margin-top: var(--mm-link-gutter);
  }

  .megamenu-link {
    display: flex;
    align-items: center;
    text-decoration: none;
    color: var(--ps-nav-link-color);
    padding: var(--mm-link-padding-y) var(--mm-link-padding-x) var(--mm-link-padding-y) var(--mm-link-padding-x);
    border-radius: .5rem;
  }

    .megamenu-link:hover {
      background-color: var(--ps-nav-link-hover-bg);
    }

      .megamenu-link:hover ._title{
        color: var(--ps-nav-link-hover-color);
      }

      .megamenu-link.active ._title {
        color: var(--ps-nav-link-active-color);
      }

    .megamenu-link ._icon {
      font-size: 2rem;
      margin-right: .5rem;
      color: rgba(var(--bs-primary-rgb),1);
    }

    .megamenu-link ._details {
      display: flex;
      flex-direction: column;
    }

      .megamenu-link ._details ._title {
        font-weight: var(--ps-nav-link-font-weight);
      }

      .megamenu-link ._details ._description {
        font-size: 0.75rem;
        color: #444;
      }

  /* Mobile menu */
  .toggle-mobile-menu[aria-expanded="false"] .fa-times,
  .toggle-mobile-menu[aria-expanded="true"] .fa-bars {
    display: none;
  }

  .mobile-menu {
    --bs-navbar-active-color: rgba(var(--bs-primary-rgb),1);
    --bs-nav-link-padding-y: 1.5rem;
    --bs-nav-link-padding-x: 1rem;
    --ps-mobile-menu-top-position: calc(var(--navHeight) + 1px);
    --ps-nav-items-list-style: none;
    --ps-nav-items-margin: 0;
    --ps-nav-items-padding: 0;
    --ps-submenu-background-color: #fff;
    z-index: 999;
    top: var(--ps-mobile-menu-top-position);
    overflow-y: scroll;
  }

    .mobile-menu,
    .mobile-menu .submenu {
      position: fixed;
      right: 0;
      left: 0;
      bottom: 0;
      padding-top: .5rem;
      width: 100%;
      height: 100%;
      transition: all 0.1s ease;
      -webkit-transform: translate(100%);
      -ms-transform: translate(100%);
      transform: translate(100%);
      background: var(--ps-submenu-background-color);
      outline: none !important;
    }

      .mobile-menu .submenu {
        z-index: 1000;
        top: 0;
        overflow: overlay;
      }

        .mobile-menu.show,
        .mobile-menu .submenu.show {
          -webkit-transform: translate(0);
          -ms-transform: translate(0);
          transform: translate(0);
        }

  .mobile-menu-wrapper {
    position: relative;
  }

  .mobile-menu-nav-items {
    list-style: var(--ps-nav-items-list-style);
    margin: var(--ps-nav-items-margin);
    padding: var(--ps-nav-items-padding);
  }

  .mobile-menu .nav-link {
    border-bottom: 1px solid var(--bs-border-color);
    border-radius: 0;
    display: flex;
  }

    .mobile-menu .nav-link.active {
      color: var(--bs-navbar-active-color);
    }

    .mobile-menu .nav-link ._icon {
      font-size: 1.3rem;
      line-height: 0;
    }

  .mobile-menu .nav-item-back {
    --bs-nav-link-color: var(--bs-secondary);
  }

  .mobile-menu .nav-item-parent {
    --bs-nav-link-font-weight: var(--ps-body-bold-font-weight);
  }

  /* Pagination */
  .pagination {
    --bs-pagination-bg: none;
    --bs-pagination-border-width: 0;
    --bs-pagination-border-radius: var(--bs-border-radius);
    --bs-pagination-active-color: var(--ps-nav-link-active-color);
    --bs-pagination-active-bg: var(--ps-nav-link-active-bg);
    --bs-pagination-active-border-color: var(--ps-nav-link-active-bg);
    --bs-pagination-hover-color: var(--ps-nav-link-hover-color);
    --bs-pagination-hover-bg: var(--ps-nav-link-hover-bg);
    --bs-pagination-hover-border-color: var(--ps-nav-link-hover-bg);
  }

/************************************
NAVBAR SEARCHBAR
************************************/
.searchbar {
  background-color: var(--bs-light);
  width: 100%;
  border-bottom: 1px solid var(--bs-border-color);
  padding: 1rem 0;
}

/************************************
CONTAINERS AND ROWS
************************************/
  @media (min-width:992px) {
    .container-sm {
      max-width: 768px;
    }
  }

  .row {
    --bs-gutter-x: var(--ps-column-gutter-x);
    --bs-gutter-y: var(--ps-column-gutter-y);
  }

  /************************************
BREADCRUMB
************************************/
  .breadcrumb-wrapper {
    background-color: var(--ps-breadcrumb-bg-hex);
  }

.breadcrumb {
  --bs-breadcrumb-padding-x: 0;
  --bs-breadcrumb-padding-y: .80rem;
  --bs-breadcrumb-font-size: .75rem;
  --bs-breadcrumb-item-active-color: var(--ps-breadcrumb-color-hex);
  --bs-breadcrumb-divider-color: rgba(var(--ps-breadcrumb-color-rgb),.7);
}

  .breadcrumb-item a {
    color: var(--ps-breadcrumb-color-hex);
    text-decoration: none;
  }

/************************************
CUSTOM
************************************/
  /* Page header */
  .page-header {
    display: flex;
    flex-direction: column;
    position: relative;
  }

  .page-header-banner {
    display: flex;
    flex-direction: column;
  }

    .page-header-banner ._image {
      width: 100%;
    }

  /* Image label */
  .image-label {
    z-index: 10;
    position: absolute;
    top: 0;
    left: 0;
    padding: 0.5rem 0.8rem;
    color: rgba(var(--ps-primary-text-rgb),1);
    background-color: rgba(var(--bs-primary-rgb),1);
    border-top-left-radius: var(--bs-border-radius);
    border-bottom-right-radius: var(--bs-border-radius);
  }

  .umb-module {
    background-color: var(--color-bg);
  }

  .modules-flex-height .umb-module {
    flex-grow: 1;
    height: 100%;
  }

.page-back-button {
  margin-top: var(--ps-section-gutter-y);
  margin-bottom: var(--ps-section-gutter-y);
}

.parallax-bg {
  background-attachment: fixed;
}

/************************************
SOCIAL COLORS
************************************/
  .text-color-twitter {
    color: #1DA1F2;
  }

  .text-color-linkedIn {
    color: #0A66C2;
  }

/************************************
FORMS
************************************/
.umbraco-forms-hidden {
  display: none;
}

.umbraco-forms-fieldset > legend {
  font-family: var(--ps-title-font-family, --bs-body-font-family);
  font-weight: var(--ps-title-font-weight);
  font-size: var(--ps-h4-font-size);
  margin-top: 1rem;
}

.umbraco-forms-form .row {
  --bs-gutter-y: 0;
}

.umbraco-forms-field {
  margin-bottom: 1rem;
}
/* Label */
.umbraco-forms-label {
  font-weight: var(--ps-body-bold-font-weight);
}

.umbraco-forms-tooltip {
  font-size: 0.9rem;
  display: block;
}

.umbraco-forms-field-wrapper {
  margin-top: .5rem;
}

.umbraco-forms-indicator {
  color: var(--bs-danger);
}
/* Forms fields */
.form-control, .form-select {
  background-color: #fff;
}

.form-control, .form-check-input {
  --bs-border-color: rgba(0,0,0,.2);
  border-width: var(--ps-border-width);
}

.radiobuttonlist-horizontal {
  display: flex;
}

  .radiobuttonlist-horizontal .form-check + .form-check {
    margin-left: 1.2rem;
  }

.form-check-input:checked {
  background-color: var(--bs-success);
  border-color: var(--bs-success);
}

.form-control.valid {
  border-color: var(--bs-success);
}

.form-control.input-validation-error {
  border-color: var(--bs-danger);
  border-bottom-left-radius: 0;
  border-bottom-right-radius: 0;
}
/* Validation message */
.field-validation-error {
  display: block;
  width: 100%;
  margin-top: .2rem;
  padding: .275rem .75rem;
  font-size: .875em;
  color: #fff;
  background-color: var(--bs-danger);
  border-radius: var(--bs-border-radius);
}

.form-control + .field-validation-error {
  margin-top: 0;
  border-top-left-radius: 0;
  border-top-right-radius: 0;
}

/************************************
ANIMATION - KEYFRAMES
************************************/
  @-webkit-keyframes slide-up {
    from {
      transform: translateY(0.5rem);
      opacity: 0
    }

    to {
      transform: translateY(0);
      opacity: 1
    }
  }

  @keyframes slide-up {
    from {
      transform: translateY(0.5rem);
      opacity: 0
    }

    to {
      transform: translateY(0);
      opacity: 1
    }
  }

  @-webkit-keyframes slide-left {
    from {
      transform: translateX(100%);
      opacity: 0
    }

    to {
      transform: translateX(0);
      opacity: 1
    }
  }

  @keyframes slide-left {
    from {
      transform: translateX(100%);
      opacity: 0
    }

    to {
      transform: translateX(0);
      opacity: 1
    }
  }