@charset "UTF-8";

html, body{
 height: 100%; margin: 0
}

@media ( max-width: 1199px ){
	
 html.sidebar-open body{
  overflow: hidden;
 }
 
}

@supports ( display: grid ){

 .ui-frame-header{
  grid-area: header
 }
 .ui-frame-header-side-first{
  grid-area: header-side-first
 }
 .ui-frame-header-side-last{
  grid-area: header-side-last
 }
 .ui-frame-mainmenu{
  grid-area: mainmenu
 }
 .ui-frame-header-line{
  grid-area: header-line
 }
 .ui-frame-app-window{
  grid-area: app-window
 }
 .ui-frame-footer{
  grid-area: footer
 }
 
 /*
  Header default/centered
  */

 .ui-frame-container.header-layout-default{
  min-height: 100%;
  display: grid;
  grid-template-columns: 1fr auto auto;
  grid-template-rows: 50px 1px 1fr auto;
  grid-template-areas: 
    "header header-side-first header-side-last"
    "header-line header-line header-line"
    "app-window app-window app-window"
    "footer footer footer";

 }
 
 .ui-frame-container.header-layout-default .ui-frame-header{
  padding-left: 20px 
 }
 
 @media ( min-width: 576px ){

  .ui-frame-container.header-layout-default{
   grid-template-rows: 70px 1px 1fr auto;  
  }
  
 }

 @media ( min-width: 1200px ){

  .ui-frame-container.header-layout-default{
   grid-template-columns: 1fr 300px 1fr;
   grid-template-rows: 80px 60px 1px 1fr auto;
   grid-template-areas: 
     "header-side-first header header-side-last"
     "mainmenu mainmenu mainmenu"
	 "header-line header-line header-line"
     "app-window app-window app-window"
	 "footer footer footer";
  }
  
  .ui-frame-container.header-layout-default .ui-frame-header{
   padding-left: 0 
  }
  .ui-frame-container.header-layout-default .ui-frame-header,
  .ui-frame-container.header-layout-default .ui-frame-mainmenu{
   justify-self: center;
  }
  .ui-frame-container.header-layout-default .ui-frame-header-side-first{
   padding-left: 20px
  }
  .ui-frame-container.header-layout-default .ui-frame-header-side-last{
   padding-right: 20px
  }
  .ui-frame-container.header-layout-default .ui-group-header.ui-frame-header-side-last .wrapper{
   justify-content: flex-end
  }
  .ui-frame-container.header-layout-default .ui-frame-mainmenu{
   padding-left: 20px;
   padding-right: 20px
  }

 }
 
 /*
  Contain header
  */
  
 .ui-frame-container.header-layout-contained{
  min-height: 100%;
  display: grid;
  grid-template-columns: 1fr auto auto;
  grid-template-rows: 50px 1px 1fr auto;
  grid-template-areas: 
    "header header-side-first header-side-last"
    "header-line header-line header-line"
    "app-window app-window app-window"
    "footer footer footer";

 }
 
 .ui-frame-container.header-layout-contained .ui-frame-header{
  padding-left: 20px 
 }
 
 @media ( min-width: 576px ){

  .ui-frame-container.header-layout-contained{
   grid-template-rows: 70px 1px 1fr auto;  
  }
  
 }
 
 @media ( min-width: 1200px ){

  .ui-frame-container.header-layout-contained{
   grid-template-columns: 1fr minmax( auto, 700px) minmax( auto, 700px ) 1fr;
   grid-template-rows: 80px 60px 1px 1fr auto;
   grid-template-areas: 
     ". header header-side-first ."
     "mainmenu mainmenu mainmenu mainmenu"
	 "header-line header-line header-line header-line"
     "app-window app-window app-window app-window"
	 "footer footer footer footer";
  }
  
  .ui-frame-container.header-layout-contained .ui-frame-mainmenu{
   justify-self: center;
  }
  .ui-frame-container.header-layout-contained .ui-frame-header-side-first{
   justify-self: flex-end;  
   padding-right: 20px
  }
  .ui-frame-container.header-layout-contained .ui-frame-header-side-last{
   display: none
  }
  .ui-frame-container.header-layout-contained .ui-group-header.ui-frame-header-side-last .wrapper{
   justify-content: flex-end
  }
  .ui-frame-container.header-layout-contained .ui-frame-mainmenu{
   padding-left: 20px;
   padding-right: 20px
  }

 }
 
 
 /*
  Header logo left menu right basic
  */

 .ui-frame-container.header-layout-logo-left-basic{
  min-height: 100%;
  display: grid;
  grid-template-columns: 1fr auto auto;
  grid-template-rows: 50px 1px 1fr auto;
  grid-template-areas: 
    "header header-side-first header-side-last"
    "header-line header-line header-line"
    "app-window app-window app-window"
    "footer footer footer";
  
 }
 
 .ui-frame-container.header-layout-logo-left-basic .ui-frame-header{
  padding-left: 20px
 }
 
 @media ( min-width: 576px ){

  .ui-frame-container.header-layout-logo-left-basic{
   grid-template-rows: 70px 1px 1fr auto;  
  }
  
 }

 @media ( min-width: 1200px ){

  .ui-frame-container.header-layout-logo-left-basic{
   grid-template-columns: 1fr 2fr auto;
   grid-template-rows: 60px 60px 1px 1fr auto;
   grid-template-areas: 
     "header header-side-first header-side-last"
     "header mainmenu mainmenu"
	 "header-line header-line header-line"
     "app-window app-window app-window"
	 "footer footer footer";
  }
  
  .ui-frame-container.header-layout-logo-left-basic .ui-group-header.ui-frame-header-side-first .wrapper,
  .ui-frame-container.header-layout-logo-left-basic .ui-group-header.ui-frame-header-side-last .wrapper{
   justify-content: flex-end
  }
  .ui-frame-container.header-layout-logo-left-basic .ui-frame-header-side-first,
  .ui-frame-container.header-layout-logo-left-basic.header-grid-buttons .ui-frame-header-side-last{
   padding-left: 20px
  }
  .ui-frame-container.header-layout-logo-left-basic .ui-frame-header-side-last{
   padding-right: 20px
  }
  .ui-frame-container.header-layout-logo-left-basic .ui-frame-mainmenu{
   padding-left: 20px;
   padding-right: 20px
  }

 }
 
 /*
  Header logo left, all menus right middle
  */
 
 .ui-frame-container.header-layout-left-all-menu-right-middle{
  min-height: 100%;
  display: grid;
  grid-template-columns: 1fr auto auto;
  grid-template-rows: 50px 1px 1fr auto;
  grid-template-areas: 
    "header header-side-first header-side-last"
    "header-line header-line header-line"
    "app-window app-window app-window"
    "footer footer footer";
  
 }
 
 .ui-frame-container.header-layout-left-all-menu-right-middle .ui-frame-header{
  padding-left: 20px
 }
 
 @media ( min-width: 576px ){

  .ui-frame-container.header-layout-left-all-menu-right-middle{
   grid-template-rows: 70px 1px 1fr auto;  
  }
  
 }

 @media ( min-width: 1200px ){

  .ui-frame-container.header-layout-left-all-menu-right-middle{
   grid-template-columns: 1fr auto auto auto;
   grid-template-rows: 100px 1px 1fr auto;
   grid-template-areas: 
     "header mainmenu header-side-first header-side-last"
	 "header-line header-line header-line header-line"
     "app-window app-window app-window app-window"
	 "footer footer footer footer";
  }
  
  .ui-frame-container.header-layout-left-all-menu-right-middle .ui-frame-mainmenu,
  .ui-frame-container.header-layout-left-all-menu-right-middle.header-grid-buttons .ui-frame-header-side-first,
  .ui-frame-container.header-layout-left-all-menu-right-middle.header-grid-buttons .ui-frame-header-side-last{
   padding-left: 20px
  }
  .ui-frame-container.header-layout-left-all-menu-right-middle .ui-frame-header-side-last{
   padding-right: 20px
  }
  .ui-frame-container.header-layout-left-all-menu-right-middle .ui-group-header.ui-frame-header-side-first .wrapper,
  .ui-frame-container.header-layout-left-all-menu-right-middle .ui-group-header.ui-frame-header-side-last .wrapper{
	justify-content: flex-end
  }

 }


}

.ui-frame-header, .ui-frame-header-side-first, .ui-frame-header-side-last, .ui-frame-header-line, .ui-frame-app-window, .ui-frame-footer{
 z-index: 1
}
.ui-frame-mainmenu{
 z-index: 2
}


/*
 mainmenu toogle
 */

.ui-group-header.ui-frame-header-side-last .wrapper a.mainmenu-toggle.hamburger, 
.ui-frame-mainmenu a.mainmenu-toggle.cross{
 display: none	
}

@media ( max-width: 1199px ){

 .ui-group-header.ui-frame-header-side-last .wrapper a.mainmenu-toggle.hamburger,
 .ui-frame-mainmenu a.mainmenu-toggle.cross{
  display: block
 }
 
}

/*
 mainmenu
 */
 
.ui-frame-mainmenu ul.primary-menu a{
 display: block;
 text-decoration: none;
 white-space: nowrap
}
.ui-frame-mainmenu ul.primary-menu a.hash-link{
 pointer-events: none
}

@media ( max-width: 1199px ){
	
 .ui-frame-mainmenu{
  position: fixed; 
  top: 0;
  left: 0;
  min-width: 100%;
  height: 100vh;
  transform: translateX( -100% );
  transition: ease transform 300ms 
 }
 
 html.sidebar-open .ui-frame-mainmenu{ 
  transform: translateX( 0 ) 
 }
 
 .ui-frame-mainmenu a.mainmenu-toggle.cross{
  top: 23px;
  right: 21px  
 }
 
 .ui-frame-mainmenu .mainmenu{
  padding: 80px 0 2px 0;	
  height: 100%
 }
 .ui-frame-mainmenu .mainmenu__outer{
  height: 100%;
  width: 100%;
  overflow: hidden;
  overflow-y: scroll
 }
 .ui-frame-mainmenu .mainmenu__inner{
  padding: 0 15px 80px 10px
 }
 .ui-frame-mainmenu ul.primary-menu{
  display: block
 }
 .ui-frame-mainmenu ul.primary-menu li{
  display: block;
  position: relative
 }
 .ui-frame-mainmenu ul.primary-menu>li+li{
  margin-top: 10px
 }
 .ui-frame-mainmenu ul.primary-menu li li+li{
  margin-top: 10px
 }
 .ui-frame-mainmenu ul.primary-menu a{
  padding: 7px
 }
 .ui-frame-mainmenu ul.primary-menu a.hash-link.hash-off{
  pointer-events: auto
 }
 .ui-frame-mainmenu ul.primary-menu>li>a{
  min-height: 38px;
 }
 .ui-frame-mainmenu ul.primary-menu div.submenu-wrap{
  max-height: 0px;
  overflow: hidden
 }
 .ui-frame-mainmenu ul.primary-menu li.menu-item-has-children.submenu-open>div.submenu-wrap{
  max-height: none
 }
 .ui-frame-mainmenu div.submenu-wrap ul{
  padding: 14px 0
 }
 .ui-frame-mainmenu ul.primary-menu div.submenu-wrap div.submenu-wrap>ul{
  padding: 6px 0
 }
 .ui-frame-mainmenu div.submenu-wrap a{
  margin-left: 40px	
 }
 .ui-frame-mainmenu div.submenu-wrap div.submenu-wrap a{
  margin-left: 60px	
 }
 
 /*
  Submenu indicator
  */
 
 .ui-frame-mainmenu ul.primary-menu li.menu-item-has-children a>span{
  display: block; 
  position: absolute; 
  top: 0; 
  width: 36px; 
  height: 38px
 }
 .ui-frame-mainmenu ul.primary-menu li.trigger-toggle-submenu>a>span{
  pointer-events: none
 }
 .ui-frame-mainmenu ul.primary-menu li>a>span.trigger-toggle-submenu{
  cursor: pointer
 }
 .ui-frame-mainmenu ul.primary-menu>li>a{
  background-color: #00000002;
  transition: background-color 50ms
 }
 .ui-frame-mainmenu ul.primary-menu>li:HOVER>a,  .ui-frame-mainmenu ul.primary-menu>li.active>a,  .ui-frame-mainmenu ul.primary-menu>li.submenu-open>a{
  background-color: #00000002
 }
 .ui-frame-mainmenu ul.primary-menu ul li>a{ 
  transition: color 100ms
 }
 
 /*
  Submenu indicator left
  */
  
 .ui-frame-mainmenu.submenu-indicator-left ul.primary-menu li.menu-item-has-children>a{
  position: relative;
  padding-left: 45px
 }
 .ui-frame-mainmenu.submenu-indicator-left ul.primary-menu li.menu-item-has-children a>span{
  left: 0; 
 }
 
 /*
  Submenu indicator right
  */
  
 .ui-frame-mainmenu.submenu-indicator-right ul.primary-menu li.menu-item-has-children>a{
  position: relative;
  padding-right: 38px
 }
 .ui-frame-mainmenu.submenu-indicator-right ul.primary-menu li.menu-item-has-children a>span{
  right: 0; 
 }
 
 /*
  Submenu indicator cross
  */
  
 .ui-frame-mainmenu.submenu-indicator-cross ul.primary-menu li.menu-item-has-children>a>span:before,
 .ui-frame-mainmenu.submenu-indicator-cross ul.primary-menu li.menu-item-has-children>a>span:after{
  content: '';
  display: block;
  position: absolute;
  background-color: #FFF;
 }
 .ui-frame-mainmenu.submenu-indicator-cross ul.primary-menu li.menu-item-has-children>a>span:before{
  top: 19px;
  left: 12px;
  width: 12px;
  height: 2px;  
 }
 .ui-frame-mainmenu.submenu-indicator-cross ul.primary-menu li.menu-item-has-children>a>span:after{
  top: 14px;
  left: 17px;
  width: 2px;
  height: 12px
 }
 .ui-frame-mainmenu.submenu-indicator-cross ul.primary-menu li.menu-item-has-children.submenu-open>a>span:after{
  top: 19px;
  height: 2px
 }
 
 /*
  Submenu indicator arrows
  */
 .ui-frame-mainmenu.submenu-indicator-arrows ul.primary-menu li.menu-item-has-children>a>span:before{
  content: '';
  display: block;
  position: absolute;
  top: 14px;
  left: 14px;
  width: 7px;
  height: 7px;  
  border: solid #d9dadc 0; 
  border-right-width: 2px;
  border-bottom-width: 2px;
  transform: rotate( 0 );
  transition: linear transform 50ms
 }
 .ui-frame-mainmenu.submenu-indicator-arrows ul.primary-menu li.menu-item-has-children.submenu-open>a>span:before{
  top: 16px; 
  transform: rotate( -135deg )
 }
 
 /*
  Sidebar scrollbar
  */
  
 .ui-frame-container.fixed-sidebar .ui-frame-mainmenu .mainmenu__outer{ /* Firefox */
  scrollbar-width: thin;
  scrollbar-gutter: auto;
  scrollbar-color: #f8f2ec transparent
 }
 .ui-frame-container.fixed-sidebar .ui-frame-mainmenu .mainmenu__outer::-webkit-scrollbar{ /* Chrome, Edge, and Safari */
  width: 8px;
 }
 .ui-frame-container.fixed-sidebar .ui-frame-mainmenu .mainmenu__outer::-webkit-scrollbar-track{
  background-color: transparent
 }
 .ui-frame-container.fixed-sidebar .ui-frame-mainmenu .mainmenu__outer::-webkit-scrollbar-thumb{
  background-color: #f8f2ec;
  border-radius: 6px
 }

}

@media ( min-width: 1200px ){
 
 /*
  Main menu desktop
  Additional styles in header.css
  */
 
 .ui-frame-mainmenu .mainmenu{
  display: flex;
  justify-content: flex-end;
  z-index: 1
 }
 .ui-frame-mainmenu ul.primary-menu{
  font-size: 0 
 }
 .ui-frame-mainmenu ul.primary-menu li{
  position: relative
 }
 .ui-frame-mainmenu ul.primary-menu ul a{
  white-space: nowrap; 
 }
 .ui-frame-mainmenu ul.primary-menu>li div.submenu-wrap{
  display: none
 }
 .ui-frame-mainmenu ul.primary-menu li:hover>div.submenu-wrap{
  display: block
 }
 .ui-frame-mainmenu ul.primary-menu>li{
  display: inline-block
 }
 .ui-frame-mainmenu ul.primary-menu>li div.submenu-wrap{
  position: absolute;
  z-index: 2
 }
 
 /*
  Submenu indicator
  Additional styles in header.css
  */
  
 .ui-frame-container.header-submenu-indicator .ui-frame-mainmenu ul.primary-menu li.menu-item-has-children a>span{
  display: block; 
  position: absolute; 
  top: 0; 
  right: 0;
  height: 100%;
  pointer-events: none
 }
 .ui-frame-container.header-submenu-indicator .ui-frame-mainmenu ul.primary-menu li.menu-item-has-children>a>span:before{
  content: '';
  display: block;
  position: absolute;
  width: 7px;
  height: 7px;   
  border: solid #d9dadc 0; 
  border-right-width: 2px;
  border-bottom-width: 2px;
  transform: rotate( 45deg );
  transition: linear transform 50ms, linear top50ms
 }
 .ui-frame-container.header-submenu-indicator .ui-frame-mainmenu ul.primary-menu li.menu-item-has-children:hover>a>span:before{
  top: 18px;
  transform: rotate( -45deg )
 }
 .ui-frame-container.header-submenu-indicator .ui-frame-mainmenu ul.primary-menu li.trigger-toggle-submenu>a>span{
  pointer-events: none
 }

}

/*
 Container widths
 */


.ui-frame-app-window .ui-frame-main .container, 
.ui-frame-app-window .ui-frame-main .container-width,
.ui-frame-app-window .ui-frame-footer .container, 
.ui-frame-app-window .ui-frame-footer .container-width{
  max-width: 1400px
}

@media ( min-width: 1420px ){
 
 .ui-frame-app-window .ui-frame-main .container.wider,
 .ui-frame-app-window .ui-frame-footer .container.wider{
  max-width: 1400px;
 }
	
}

@media ( min-width: 1620px ){
 
 .ui-frame-app-window .ui-frame-main .container.wider,
 .ui-frame-app-window .ui-frame-footer .container.wider{
  max-width: 1600px;
 }
	
}

.ui-frame-app-window .ui-frame-main .container-full-width,
.ui-frame-app-window .ui-frame-footer .container-full-width{
 max-width: 100%
}
 
@media ( min-width: 1360px ){
	
 .ui-frame-app-window .ui-frame-main .container-full-width,
 .ui-frame-app-window .ui-frame-footer .container-full-width{
  max-width: 100%
 }
 
}




