/*
## -------------------------------
##
##            HEADER
##
## -------------------------------
*/

header{
  width:100%;
  background-color:rgb(255,255,255);
  box-sizing:border-box;
  padding:0 1.5rem;
  position:fixed;
  top:0;
  left:0;
  z-index:100;
}

  header .inside{
    display:flex;
    justify-content:space-between;
    width:100%;
    height:7em;
    background-color:rgb(255,255,255);
    border-bottom:1.5px solid rgb(226,0,26);
    margin:0 auto;
    box-sizing:border-box;
    padding:1em 0;
    position:relative;
    transition:all ease .2s;
  }

  header .inside::after{
    display:block;
    content:"";
    width:calc(100% + 3rem);
    height:3em;
    background-image:linear-gradient(rgba(255,255,255,0.25), rgba(255,255,255,0));
    position:absolute;
    bottom:-3em;
    left:-1.5rem;
    z-index:-1;
  }

  header.sticky .inside{
    height:5em;
    padding:1em 0;
  }

          header .inside .logo-block figure a img{
            max-width:inherit;
            width:auto;
            height:5em;
            transition:all ease .2s;
          }

          header.sticky .inside .logo-block figure a img{
            height:3em;
          }

  header .inside .header-bars{
    width:100%;
    height:5em;
  }

    header .inside .header-bars .top-bar{
      display:flex;
      justify-content:flex-end;
      height:2em;
      margin-bottom:1em;
      opacity:1;
      overflow:hidden;
      transition:all ease .2s;
    }

    header.sticky .inside .header-bars .top-bar{
      height:0;
      opacity:0;
      margin-bottom:0;
    }

      header .inside .header-bars .top-bar .social-media-links{
        display:flex;
        margin-right:1em;
      }

        header .inside .header-bars .top-bar .social-media-links figure{
          margin:0 0.5em;
          position:relative;
        }

        header .inside .header-bars .top-bar .social-media-links figure:first-of-type{
          margin-left:0;
        }

        header .inside .header-bars .top-bar .social-media-links figure:last-of-type{
          margin-right:0;
        }

          header .inside .header-bars .top-bar .social-media-links figure a{
            text-decoration:none;
          }

            header .inside .header-bars .top-bar .social-media-links figure a img.original{
              position:absolute;
              top:0;
              left:0;
              opacity:0;
              transition:all ease .2s;
            }

          header .inside .header-bars .top-bar .social-media-links figure a:hover > img.original{
            opacity:1;
          }

      header .inside .header-bars .top-bar .mod_search .formbody{
        display:flex;
      }

        header .inside .header-bars .top-bar .mod_search .formbody .widget{
          margin:0;
          padding:0;
        }

            header .inside .header-bars .top-bar .mod_search .formbody .widget input{
              height:2em;
            }

            header .inside .header-bars .top-bar .mod_search .formbody .widget-submit{
              position:relative;
            }

              header .inside .header-bars .top-bar .mod_search .formbody .widget-submit button{
                width:0;
                padding:0;
                border:none;
              }

              header .inside .header-bars .top-bar .mod_search .formbody .widget-submit button:hover{
                cursor:pointer;
              }

              header .inside .header-bars .top-bar .mod_search .formbody .widget-submit button::before{
                display:block;
                content:"";
                width:16px;
                height:16px;
                position:absolute;
                top:8px;
                right:calc(-100% + 8px);
                background-image:url("../img/svg_icons/search.svg");
                background-size:contain;
                background-position: center;
                background-repeat:no-repeat;
              }


    header .inside .header-bars .bottom-bar{
      height:2em;
      transition:all ease .2s;
    }

    header.sticky .inside .header-bars .bottom-bar{
      height:3em;
    }

      header .inside .header-bars .bottom-bar nav{
        height:100%;
        overflow:visible;
          display:flex;
          justify-content:flex-end;
      }

        header .inside .header-bars .bottom-bar nav ul{
          display:flex;
          justify-content:flex-end;
          width:100%;
          max-width:max-content;
          height:100%;
          margin:0;
          padding:0;
        }

          header .inside .header-bars .bottom-bar nav ul li{
            list-style-type:none;
            margin:0 0.75em;
            position:relative;
          }

          header .inside .header-bars .bottom-bar nav ul li:first-of-type{
            margin-left:0;
          }

          header .inside .header-bars .bottom-bar nav ul li:last-of-type{
            margin-right:0;
          }

            header .inside .header-bars .bottom-bar nav ul li a{
              display:flex;
              align-items:center;
              font-size:1.25em;
              color:rgb(30,30,30);
              height:100%;
              box-sizing:border-box;
              padding:0.125em 0;
              text-decoration:underline;
              text-decoration-color:rgba(30,30,30,0);
              transition:all ease .2s;
            }

            header .inside .header-bars .bottom-bar nav ul li a:hover,
            header .inside .header-bars .bottom-bar nav ul li a:focus,
            header .inside .header-bars .bottom-bar nav ul li a.active{
              text-decoration:underline;
              text-decoration-color:rgba(30,30,30,1);
            }

          header .inside .header-bars .bottom-bar nav ul li.submenu ul.level_2{
            display:none;
            width:inherit;
            min-width:14em;
            height:inherit;
            background-color:rgb(255,255,255);
            box-shadow:0 0 10px rgba(30,30,30,0.5);
            box-sizing:border-box;
            padding:1em 2em;
            position:absolute;
          }

          @media (min-width:1200px){
            header .inside .header-bars .bottom-bar nav ul li.submenu:hover ul.level_2,
            header .inside .header-bars .bottom-bar nav ul li.submenu:focus ul.level_2{
              display:block;
            }
          }

            header .inside .header-bars .bottom-bar nav ul li.submenu ul.level_2 li{
              margin:0;
              border-bottom:1px solid rgb(180,180,180);
            }

            header .inside .header-bars .bottom-bar nav ul li.submenu ul.level_2 li:last-of-type{
              border:none;
            }

              header .inside .header-bars .bottom-bar nav ul li.submenu ul.level_2 li a{
                padding:0.75em 0;
              }






            header .mobile{
              display:none;
            }

            @media (max-width:1400px) {
              header .inside .header-bars .bottom-bar nav ul li a{
                font-size:1.25em;
              }
            }

            @media (max-width:1200px) {
              header .inside{
                height:5em;
                padding:1em 0;
              }

              header .inside .logo-block figure a img{
                height:3em;
              }

              header .inside .header-bars{
                height:3em;
                padding-right:2em;
              }

              header.sticky .inside .header-bars .top-bar,
              header .inside .header-bars .top-bar{
                height:2em;
                margin:0.5em 0;
                opacity:1;
              }

              header .inside .header-bars .bottom-bar{
                display:none;
              }

              header .mobile{
                display:block;
                width:36px;
                height:36px;
              }

                header .mobile button.mobile-menu{
                  background-color:transparent;
                  border:none;
                  width:36px;
                  height:36px;
                  padding:0;
                  position:relative;
                }

                header .mobile button.mobile-menu:hover{
                  cursor:pointer;
                }

                  header .mobile button.mobile-menu div{
                    width:100%;
                    height:4.8px;
                    border-radius:2em;
                    background-color:rgb(226,0,26);
                    position:absolute;
                    transition:all ease .2s;
                  }

                  header .mobile button.mobile-menu div:first-of-type{
                    top:0;

                  }

                  header .mobile button.mobile-menu div:nth-of-type(2){
                    top:15.6px;
                  }

                  header .mobile button.mobile-menu div:last-of-type{
                    bottom:0;
                    width:66.67%;
                    left:0;
                    opacity:1;
                  }

                    header .mobile button.mobile-menu.active div:first-of-type{
                      transform:rotate(45deg);
                      top:15px;
                    }

                    header .mobile button.mobile-menu.active div:nth-of-type(2){
                      transform:rotate(-45deg);
                    }

                    header .mobile button.mobile-menu.active div:last-of-type{
                      width:4.8px;
                      left:0.35em;
                      bottom:4.8px;
                      opacity:0;
                    }

              header .inside .header-bars.mobile-menu-toggled .bottom-bar,
              header.sticky .inside .header-bars.mobile-menu-toggled .bottom-bar{
                display:block;
              }

              header .inside .header-bars .bottom-bar,
              header.sticky .inside .header-bars .bottom-bar{
                display:none;
                width:max-content;
                height:auto;
                position:absolute;
                top:calc(100% + 1em);
                right:0;
              }

                header .inside .header-bars .bottom-bar nav{
                  display:block;
                }

                  header .inside .header-bars .bottom-bar nav ul{
                    display:block;
                    background-color:rgb(255,255,255);
                    max-width:inherit;
                    box-sizing:border-box;
                    padding:1em 4em;
                    box-shadow:0 0 10px rgba(30,30,30,0.25);
                  }

                    header .inside .header-bars .bottom-bar nav ul li,
                    header .inside .header-bars .bottom-bar nav ul li:first-of-type,
                    header .inside .header-bars .bottom-bar nav ul li:last-of-type{
                      margin:0;
                    }

                    header .inside .header-bars .bottom-bar nav ul li{
                      border-bottom:1px solid rgb(180,180,180);
                    }

                    header .inside .header-bars .bottom-bar nav ul li:last-of-type{
                      border-bottom:none;
                    }

                      header .inside .header-bars .bottom-bar nav ul li a{
                        font-size:1.5em;
                        font-weight:600;
                        padding:0.5em 0;
                      }


            }

            @media (max-width: 768px) {

              header .inside .header-bars,
              header.sticky .inside .header-bars{
                display:none;
                width:max-content;
                max-width:100%;
                height:auto;
                background-color:rgb(255,255,255);
                box-shadow:0 0 10px rgba(30,30,30,0.5);
                box-sizing:border-box;
                padding:1em 4em;
                position:absolute;
                top:calc(100% + 1em);
                right:0;
              }

              header .inside .header-bars.mobile-menu-toggled{
                display:flex;
                flex-wrap:wrap;
                flex-direction:column-reverse;
              }


                header .inside .header-bars .top-bar,
                header.sticky .inside .header-bars .top-bar{
                  display:flex;
                  flex-wrap:wrap;
                  flex-direction:column-reverse;
                  height:auto;
                }

                  header .inside .header-bars .top-bar .mod_search{
                    margin-bottom:1em;
                  }

                  header .inside .header-bars .top-bar .social-media-links{
                    margin:0;
                  }

                header .inside .header-bars .bottom-bar,
                header.sticky .inside .header-bars .bottom-bar{
                  display:block;
                  position:static;
                  width:100%;
                }

                  header .inside .header-bars .bottom-bar nav ul{
                    box-shadow:none;
                    padding:0;
                    width:100%;
                  }

            }
