/** appearance **/
  :root {
    text-size-adjust: 100%;
    text-rendering: optimizeLegibility;
    -webkit-font-smoothing: antialiased;
  }
  .bmenu {
    background: #3378A1;
    color: white;
    /*font-family: Helvetica, Arial, sans-serif;*/
    font-family: 'Montserrat', sans-serif; 
    font-size: 11px;
  
  }
  nav.bmenu {
    position: relative;
    display: block;
    overflow: hidden;
    /*padding: 0.90rem 0 0.90rem 0.90rem;*/
    max-width: -moz-fit-content;
    max-width: fit-content;
    box-sizing: border-box;
    background: #3378A1;
  }
  nav.bmenu a:link,
  nav.bmenu a:visited {
    color: inherit;
    text-decoration: none;
    padding: 0.60rem 0 0 0.90rem;
  }
  nav.bmenu > * {
    vertical-align: top;
  }
  nav.bmenu > a,
  nav.bmenu > hr {
    float: left;
    clear: both;
  }
  .bmenu header {
    display: block;
    font-weight: bold;
    margin: 0;
    height: 2em;
    line-height: 2em;
  }
  nav.bmenu article.panel::before {
    display: block;
    z-index: 2000;
    height: calc(100% - 2*(0.5*1rem));
    content: "";
    width: 0;
    /*border-left: 1px solid white;*/
    border-color: inherit;
    position: absolute;
    top: calc(0.5*1rem);
    box-sizing: border-box;
  }
  nav.bmenu a {
    position: relative;
    display: block;
    /*
    height: 2em;
    line-height: 2em;
    */
    min-width: 160px;
    padding-right: 1rem;

    word-break: break-word;
    padding-bottom: 8px;
  }
  nav.bmenu > hr {
    border: 0;
    border-top-width: 1px;
    border-top-color: inherit;
    border-top-style: solid;
    width: 160px;
    margin: 1em 0;
  }
  nav.bmenu article.panel {
 /*background: #5C93B4;*/
    position: relative;
    min-height: calc(463px - 2*1.25rem);
    background: #5C93B4;
  }
  nav.bmenu article.panel section.titled-group {
    /*width: 98%;*/
  }
  nav.bmenu section.titled-group:not(:first-of-type) {
    margin-top: 2em;
  }
 
  nav.bmenu div.column {
    margin-left: 1rem;
    width: 708px;
    height: 619px;
    padding-right: 0px;
    padding-top: 0.60rem;
}

  nav.bmenu div.column header{
    color: white;
    border: 1px solid;
    word-break: break-word;
    display: block;
    height: 61px;
    padding: 0px;
    margin-bottom: 10px;
    margin-right: 6px;
  }

  nav.bmenu div.column img{
    float:left;
    width: 50px;
    padding-right: 5px;
  }

  nav.bmenu div.column .title_bold {
    font-weight: bold;
    max-height: 50px;
    overflow: hidden;
    display: block;
   }

  nav.bmenu div.column .title_cors {
    /*font-style: italic;*/
    font-weight: normal;
    margin-top: 2px;
    display: block;
  }

  nav.bmenu div.column a {
    padding: 5px 5px 6px 5px;
    display: block;
   /* height: 59px;*/
  }

 nav.bmenu div.column > a {
    padding: 4px;
    display: block;
    width: 218px;
    float: left;
    margin: 5px 5px 5px 0;
    overflow: hidden;
    height: 50px;
}

nav.bmenu div.column a:hover {
  background-color: #9d9fa0;
}

  label.bmenu.toggle {
    display: inline-block;
    padding: 0 0.75rem;
    width: 100%;
  }
  .hidden {
    display: none;
  }

/** behaviour **/
  .bmenu a,
  label.bmenu {
    cursor: pointer;
  }
  article.panel {
    display: none;
    font-size: 10px;
  }
  
  #bmenu_toggle ~ div.hide-at-start-wrapper > 
  nav.bmenu > article.panel:nth-of-type(16) {
    display: inline-flex;
  }
  #bmenu_toggle ~ div.hide-at-start-wrapper > 
  nav.bmenu > article.panel:hover ~ article.panel:nth-of-type(16),
  #bmenu_toggle ~ div.hide-at-start-wrapper > 
  nav.bmenu > a:focus:not(.no-panel) ~ article.panel:nth-of-type(16),
  #bmenu_toggle ~ div.hide-at-start-wrapper > 
  nav.bmenu > a:hover:not(.no-panel) ~ article.panel:nth-of-type(16) {
    display: none;
  }

  nav.bmenu > a:nth-of-type(1):focus ~ article.panel:nth-of-type(1),
  nav.bmenu > a:nth-of-type(1):hover ~ article.panel:nth-of-type(1) {
    display: inline-flex;
  }
  nav.bmenu > a:nth-of-type(2):focus ~ article.panel:nth-of-type(2),
  nav.bmenu > a:nth-of-type(2):hover ~ article.panel:nth-of-type(2) {
    display: inline-flex;
  }
  nav.bmenu > a:nth-of-type(3):focus ~ article.panel:nth-of-type(3),
  nav.bmenu > a:nth-of-type(3):hover ~ article.panel:nth-of-type(3) {
    display: inline-flex;
  }
  nav.bmenu > a:nth-of-type(4):focus ~ article.panel:nth-of-type(4),
  nav.bmenu > a:nth-of-type(4):hover ~ article.panel:nth-of-type(4) {
    display: inline-flex;
  }
  nav.bmenu > a:nth-of-type(5):focus ~ article.panel:nth-of-type(5),
  nav.bmenu > a:nth-of-type(5):hover ~ article.panel:nth-of-type(5) {
    display: inline-flex;
  }
  nav.bmenu > a:nth-of-type(6):focus ~ article.panel:nth-of-type(6),
  nav.bmenu > a:nth-of-type(6):hover ~ article.panel:nth-of-type(6) {
    display: inline-flex;
  }
  nav.bmenu > a:nth-of-type(7):focus ~ article.panel:nth-of-type(7),
  nav.bmenu > a:nth-of-type(7):hover ~ article.panel:nth-of-type(7) {
    display: inline-flex;
  }
  nav.bmenu > a:nth-of-type(8):focus ~ article.panel:nth-of-type(8),
  nav.bmenu > a:nth-of-type(8):hover ~ article.panel:nth-of-type(8) {
    display: inline-flex;
  }
  nav.bmenu > a:nth-of-type(9):focus ~ article.panel:nth-of-type(9),
  nav.bmenu > a:nth-of-type(9):hover ~ article.panel:nth-of-type(9) {
    display: inline-flex;
  }
  nav.bmenu > a:nth-of-type(10):focus ~ article.panel:nth-of-type(10),
  nav.bmenu > a:nth-of-type(10):hover ~ article.panel:nth-of-type(10) {
    display: inline-flex;
  }
  nav.bmenu > a:nth-of-type(11):focus ~ article.panel:nth-of-type(11),
  nav.bmenu > a:nth-of-type(11):hover ~ article.panel:nth-of-type(11) {
    display: inline-flex;
  }
  nav.bmenu > a:nth-of-type(12):focus ~ article.panel:nth-of-type(12),
  nav.bmenu > a:nth-of-type(12):hover ~ article.panel:nth-of-type(12) {
    display: inline-flex;
  }
  nav.bmenu > a:nth-of-type(13):focus ~ article.panel:nth-of-type(13),
  nav.bmenu > a:nth-of-type(13):hover ~ article.panel:nth-of-type(13) {
    display: inline-flex;
  }
  nav.bmenu > a:nth-of-type(14):focus ~ article.panel:nth-of-type(14),
  nav.bmenu > a:nth-of-type(14):hover ~ article.panel:nth-of-type(14) {
    display: inline-flex;
  }
  nav.bmenu > a:nth-of-type(15):focus ~ article.panel:nth-of-type(15),
  nav.bmenu > a:nth-of-type(15):hover ~ article.panel:nth-of-type(15) {
    display: inline-flex;
  }

  nav.bmenu > a:hover:not(.no-panel) ~ a:focus:nth-of-type(1) ~ article.panel:nth-of-type(1),
  nav.bmenu > a:focus:nth-of-type(1) ~ a:hover:not(.no-panel) ~ article.panel:nth-of-type(1) {
    display: none;
  }
  nav.bmenu > a:hover:not(.no-panel) ~ a:focus:nth-of-type(2) ~ article.panel:nth-of-type(2),
  nav.bmenu > a:focus:nth-of-type(2) ~ a:hover:not(.no-panel) ~ article.panel:nth-of-type(2) {
    display: none;
  }
  nav.bmenu > a:hover:not(.no-panel) ~ a:focus:nth-of-type(3) ~ article.panel:nth-of-type(3),
  nav.bmenu > a:focus:nth-of-type(3) ~ a:hover:not(.no-panel) ~ article.panel:nth-of-type(3) {
    display: none;
  }
  nav.bmenu > a:hover:not(.no-panel) ~ a:focus:nth-of-type(4) ~ article.panel:nth-of-type(4),
  nav.bmenu > a:focus:nth-of-type(4) ~ a:hover:not(.no-panel) ~ article.panel:nth-of-type(4) {
    display: none;
  }
  nav.bmenu > a:hover:not(.no-panel) ~ a:focus:nth-of-type(5) ~ article.panel:nth-of-type(5),
  nav.bmenu > a:focus:nth-of-type(5) ~ a:hover:not(.no-panel) ~ article.panel:nth-of-type(5) {
    display: none;
  }
  nav.bmenu > a:hover:not(.no-panel) ~ a:focus:nth-of-type(6) ~ article.panel:nth-of-type(6),
  nav.bmenu > a:focus:nth-of-type(6) ~ a:hover:not(.no-panel) ~ article.panel:nth-of-type(6) {
    display: none;
  }
  nav.bmenu > a:hover:not(.no-panel) ~ a:focus:nth-of-type(7) ~ article.panel:nth-of-type(7),
  nav.bmenu > a:focus:nth-of-type(7) ~ a:hover:not(.no-panel) ~ article.panel:nth-of-type(7) {
    display: none;
  }
  nav.bmenu > a:hover:not(.no-panel) ~ a:focus:nth-of-type(8) ~ article.panel:nth-of-type(8),
  nav.bmenu > a:focus:nth-of-type(8) ~ a:hover:not(.no-panel) ~ article.panel:nth-of-type(8) {
    display: none;
  }
  nav.bmenu > a:hover:not(.no-panel) ~ a:focus:nth-of-type(9) ~ article.panel:nth-of-type(9),
  nav.bmenu > a:focus:nth-of-type(9) ~ a:hover:not(.no-panel) ~ article.panel:nth-of-type(9) {
    display: none;
  }
  nav.bmenu > a:hover:not(.no-panel) ~ a:focus:nth-of-type(10) ~ article.panel:nth-of-type(10),
  nav.bmenu > a:focus:nth-of-type(10) ~ a:hover:not(.no-panel) ~ article.panel:nth-of-type(10) {
    display: none;
  }
  nav.bmenu > a:hover:not(.no-panel) ~ a:focus:nth-of-type(11) ~ article.panel:nth-of-type(11),
  nav.bmenu > a:focus:nth-of-type(11) ~ a:hover:not(.no-panel) ~ article.panel:nth-of-type(11) {
    display: none;
  }
  nav.bmenu > a:hover:not(.no-panel) ~ a:focus:nth-of-type(12) ~ article.panel:nth-of-type(12),
  nav.bmenu > a:focus:nth-of-type(12) ~ a:hover:not(.no-panel) ~ article.panel:nth-of-type(12) {
    display: none;
  }
  nav.bmenu > a:hover:not(.no-panel) ~ a:focus:nth-of-type(13) ~ article.panel:nth-of-type(13),
  nav.bmenu > a:focus:nth-of-type(13) ~ a:hover:not(.no-panel) ~ article.panel:nth-of-type(13) {
    display: none;
  }
  nav.bmenu > a:hover:not(.no-panel) ~ a:focus:nth-of-type(14) ~ article.panel:nth-of-type(14),
  nav.bmenu > a:focus:nth-of-type(14) ~ a:hover:not(.no-panel) ~ article.panel:nth-of-type(14) {
    display: none;
  }
  nav.bmenu > a:hover:not(.no-panel) ~ a:focus:nth-of-type(15) ~ article.panel:nth-of-type(15),
  nav.bmenu > a:focus:nth-of-type(15) ~ a:hover:not(.no-panel) ~ article.panel:nth-of-type(15) {
    display: none;
  }
  
  nav.bmenu > a:nth-of-type(1):focus ~ article.panel:hover ~ article.panel:nth-of-type(1) {
    display: none;
  }
  nav.bmenu > a:nth-of-type(2):focus ~ article.panel:hover ~ article.panel:nth-of-type(2) {
    display: none;
  }
  nav.bmenu > a:nth-of-type(3):focus ~ article.panel:hover ~ article.panel:nth-of-type(3) {
    display: none;
  }
  nav.bmenu > a:nth-of-type(4):focus ~ article.panel:hover ~ article.panel:nth-of-type(4) {
    display: none;
  }
  nav.bmenu > a:nth-of-type(5):focus ~ article.panel:hover ~ article.panel:nth-of-type(5) {
    display: none;
  }
  nav.bmenu > a:nth-of-type(6):focus ~ article.panel:hover ~ article.panel:nth-of-type(6) {
    display: none;
  }
  nav.bmenu > a:nth-of-type(7):focus ~ article.panel:hover ~ article.panel:nth-of-type(7) {
    display: none;
  }
  nav.bmenu > a:nth-of-type(8):focus ~ article.panel:hover ~ article.panel:nth-of-type(8) {
    display: none;
  }
  nav.bmenu > a:nth-of-type(9):focus ~ article.panel:hover ~ article.panel:nth-of-type(9) {
    display: none;
  }
  nav.bmenu > a:nth-of-type(10):focus ~ article.panel:hover ~ article.panel:nth-of-type(10) {
    display: none;
  }
  nav.bmenu > a:nth-of-type(11):focus ~ article.panel:hover ~ article.panel:nth-of-type(11) {
    display: none;
  }
  nav.bmenu > a:nth-of-type(12):focus ~ article.panel:hover ~ article.panel:nth-of-type(12) {
    display: none;
  }
  nav.bmenu > a:nth-of-type(13):focus ~ article.panel:hover ~ article.panel:nth-of-type(13) {
    display: none;
  }
  nav.bmenu > a:nth-of-type(14):focus ~ article.panel:hover ~ article.panel:nth-of-type(14) {
    display: none;
  }
  nav.bmenu > a:nth-of-type(15):focus ~ article.panel:hover ~ article.panel:nth-of-type(15) {
    display: none;
  }

  nav.bmenu > article.panel:hover {
    display: inline-flex;
  }

  nav.bmenu > article.panel:hover ~ article.panel {
    display: none;
  }

  #bmenu_toggle:not(:checked) ~ div.hide-at-start-wrapper > nav.bmenu > a::after {
    /*border-color: black;*/
  }

  #bmenu_toggle:checked ~ label.bmenu.toggle:hover .heavy {
   /* text-shadow: 0 1px 0 white;*/
  }
  #bmenu_toggle:not(:checked) ~ label.bmenu.toggle:hover .heavy {
   /*  text-shadow: 0 1px 0 silver;*/
  }
  #bmenu_toggle:not(:checked) ~ label.bmenu.toggle:hover {
    color: #d5d6d5;
  }
  #bmenu_toggle:not(:checked) ~ label.bmenu.toggle {
    background: #3378A1;
    color: #fff;
  }

  nav.bmenu > a:hover,
  nav.bmenu > a:focus {
    /*background-color: #E8F0FE;*/
  }
  nav.bmenu > a:not(.no-panel):hover::before,
  nav.bmenu > a:not(.no-panel):focus::before {
    content: "";
    position: absolute;
    z-index: 1000;
    display: block;
    left: 0rem;
    top: 0px;
    height: 100%;
    /*width: 0.3em;*/
    width: 100%;
    background-color: white;
    opacity: 0.2;
  }
  nav.bmenu > a:not(.no-panel)::after {
    content: "";
    position: absolute;
    z-index: 1000;
    display: block;
    height: 0.5em;
    width: 0.5em;
    border: 1px solid #F1F1F1;
    border-bottom: 0;
    border-left: 0;
    /* centered vertically and pointing right */
    /* just maths, bitches, MATHS */
    right: calc(0.5*0.5em + 1.25em);
    top: calc(50% + 0.5*0.5*0.5em);
    -ms-transform: rotate(45deg) translate(-50%, -50%);
    -webkit-transform: rotate(45deg) translate(-50%, -50%);
    transform: rotate(45deg) translate(-50%, -50%);
  }
  nav.bmenu > a:hover::after,
  nav.bmenu > a:focus::after {
    border-color: white;
  }
  nav.bmenu > article.panel a:hover,
  nav.bmenu > a.no-panel:hover {
    /*color: grey;*/
    text-decoration: none;
    height:: auto;
  }

  label {
    -ms-user-select: none;
    -moz-user-select: none;
    user-select: none;
  }
  label.bmenu.toggle {
    font-size: 13px;
  }
  .heavy {
    display: inline-block;
    font-weight: 900;
    /*text-shadow: 0 1px 0 black;*/
    -ms-transform: scaleX(1.2);
    -webkit-transform: scaleX(1.2);
    transform: scaleX(1.2);
    margin-right: 10px;
  }

/** animation **/
  input#bmenu_toggle:checked ~ div.hide-at-start-wrapper > nav.bmenu.panel {
    animation: roll-open 0.4s ease 0s normal forwards;
    transition: padding 0.1s ease, color 0.2s ease 0.1s;
    display: block;
    color: white;
  }
  input#bmenu_toggle:not(:checked) ~ div.hide-at-start-wrapper > nav.bmenu.panel {
    animation: roll-closed 0.4s ease 0s normal forwards;
    transition: padding 0.1s ease 0.2s, color 0.2s ease;
    padding: 0;
    color: #efefef;
  }
  @keyframes roll-open {
    0% {
      max-height: 0;
    }
    99% {
      max-height: 463px;
    }
    100% {
      max-height: unset;
    }
  }
  @keyframes roll-closed {
    0% {
      max-height: unset;
    }
    1% {
      max-height: 463px;
    }
    100% {
      max-height: 0;
    }
  }
  @keyframes hide-at-start {
    0% {
      visibility: hidden;
    }
    99% {
      visibility: hidden;
    }
    100% {
      visibility: visible;
    }
  }
  nav.bmenu.animated > a::after {
    transition: border-color 0.2s ease;
  }
  div.hide-at-start-wrapper {
    animation: hide-at-start 0.5s ease 0s normal forwards;
    z-index: 1001;
    position:relative;
    width: 989px;
    /*background-color: #3378A1;
    border-top: 1px solid #3378A1;*/
  }

/** triangular hover regions **/
  nav.bmenu.panel > a {
    position: relative;
    width: 250px;
  }
  nav.bmenu.panel > a > span.triangle-origin {
    display: inline-block;
    width: 90%;
    height: 100%;
    border-bottom: 1px solid white;
    padding-bottom: 8px;
  }

  nav.bmenu.panel > a > span.triangle-origin .title_bold {
    font-weight: bold;
  }

  nav.bmenu.panel > a > span.triangle-origin .title_cors {
    /*font-style: italic;*/
    font-weight: normal;
    margin-top: 2px;
    display: block;
  }

  nav.bmenu.panel > a > span.triangle-origin:hover::after {
    /*background: transparent;
    z-index: 1001;
    display: block;
    position: absolute;
    width: 200px;
    height: 200px;
    right: -300px;
    top: 0;
    content: "";
    */

    /**
    outline: 1px solid lime;

    -ms-transform: rotate(-45deg) skew(20deg,20deg) translate(0,-100%);
    -webkit-transform: rotate(-45deg) skew(20deg,20deg) translate(0,-100%);
    transform: rotate(-45deg) skew(20deg,20deg) translate(0,-100%);
        **/
    background-color: #d5d6d5;
  }
  nav.bmenu.panel > article.panel {
    position: relative;
    z-index: 1002;
  }

/** fix start issue **/
  nav.bmenu article.panel:nth-of-type(1),
  nav.bmenu article.panel:nth-of-type(10) {
    min-width: 460px;
  }

/** specific cross browser **/
  @supports (-ms-ime-align: auto) {
    nav.bmenu.panel {
      display: table;
    }
    input#bmenu_toggle:checked ~ div.hide-at-start-wrapper > nav.bmenu.panel {
      animation: 0;
      transition: 0;
      height: auto;
      display: table;
    }
    input#bmenu_toggle:not(:checked) ~ div.hide-at-start-wrapper > nav.bmenu.panel {
      animation: 0;
      transition: 0;
      height: 0;
      display: none;
    }
    nav.bmenu.animated > a::after {
      transition: 0;
    }
    div.hide-at-start-wrapper {
      animation: 0;
    }
  }
  @media all and (-ms-high-contrast: none), (-ms-high-contrast: active) {
    nav.bmenu.panel {
      display: table;
    }
    input#bmenu_toggle:checked ~ div.hide-at-start-wrapper > nav.bmenu.panel {
      animation: 0;
      transition: 0;
      height: auto;
      display: table;
    }
    input#bmenu_toggle:not(:checked) ~ div.hide-at-start-wrapper > nav.bmenu.panel {
      animation: 0;
      transition: 0;
      height: 0;
      display: none;
    }
    nav.bmenu.animated > a::after {
      transition: 0;
    }
    div.hide-at-start-wrapper {
      animation: 0;
    }
  }
  @media screen\0 {
    nav.bmenu.panel {
      display: table;
    }
    input#bmenu_toggle:checked ~ div.hide-at-start-wrapper > nav.bmenu.panel {
      animation: 0;
      transition: 0;
      height: auto;
      display: table;
    }
    input#bmenu_toggle:not(:checked) ~ div.hide-at-start-wrapper > nav.bmenu.panel {
      animation: 0;
      transition: 0;
      height: 0;
      display: none;
    }
    nav.bmenu.animated > a::after {
      transition: 0;
    }
    div.hide-at-start-wrapper {
      animation: 0;
    }
  }

